java中3种将byte转换为string的方法

  • Post category:other

以下是关于“Java中3种将byte转换为String的方法”的完整攻略,包含两个示例:

方法1:使用String类的构造函数

可以使用String类的构造函数将byte数组转换为String。例如:

byte[] byteArray = { 97, 98, 99, 100 };
String str = new String(byteArray);
System.out.println(str);

上述代码将byte数组byteArray转换为String,并输出结果为abcd

方法2:使用Base64编码

可以使用Base64编码将byte数组转换为String。例如:

byte[] byteArray = {97, 98, 99, 100 };
String str = Base64.getEncoder().encodeToString(byteArray);
System.out.println(str);

上述代码将byte数组byteArray使用Base64编码转换为String,并输出结果为YWJjZA==

方法3:使用Hex编码

可以使用Hex编码将byte数组转换为String。例如:

byte[] byteArray = { 97, 98, 99, 100 };
String str = DatatypeConverter.printHexBinary(byteArray);
System.out.println(str);

上述代码将byte数组byteArray使用Hex编码转换为String,并输出结果为61626364

示例1:使用String类的构造函数将byte数组转换为String

以下是一个示例,演示了如何使用String类的构造函数将byte数组转换为String:

byte[] byteArray = { 72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100 };
String str = new String(byteArray);
System.out.println(str);

上述代码将byte数组byteArray转换为String,并输出结果为Hello World

示例2:使用Base64编码将byte数组转换为String

以下是另一个示例,演示了如何使用Base64编码将byte数组转换为String:

byte[] byteArray = { 72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100 };
String str = Base64.getEncoder().encodeToString(byteArray);
System.out.println(str);

上述代码将byte数组byteArray使用Base64编码转换为String,并输出结果为SGVsbG8gV29ybGQ=

总结

Java中有三种将byte数组转换为String的方法:使用String类的构造函数、使用Base64编码和使用Hex编码。使用String类的构造函数是最简单的方法,但可能会导致编码问题。使用Base64编码可以确保编码正确性,但会增加字符串长度。使用Hex编码可以确保编码正确性,但会使字符串长度增加一倍。在实际应用中,应根据具体情况选择合适的方法。