将包含ASCII字符的字节数组转换为String

use*_*764 17 java string bytearray

我有一个字节数组,由我希望转换为String的ASCII字符组成.例如:

byte[] myByteArray = new byte[8];
for (int i=0; i<8; i++) {
    byte[i] = (byte) ('0' + i);
}
Run Code Online (Sandbox Code Playgroud)

循环后,myByteArray应包含字符串"12345678".如何将此字符串转换为String变量?

谢谢!

roc*_*boy 37

使用

new String(myByteArray, "UTF-8");
Run Code Online (Sandbox Code Playgroud)

String类为此提供了构造函数.

旁注:这里的第二个参数是CharSet(字节编码),应该仔细处理.更多这里.

  • 如果 op 想从“ASCII 转换 *”,那么这不应该是 `new String(myByteArray, "ISO-8859-1");`?(假设 8 位 ASCII/ISO-LATIN 而不是旧的 7 位) (4认同)