Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何将ASCII转换为字符串_Java_Arrays_Spring_Utf 8_Ascii - Fatal编程技术网

Java 如何将ASCII转换为字符串

Java 如何将ASCII转换为字符串,java,arrays,spring,utf-8,ascii,Java,Arrays,Spring,Utf 8,Ascii,我正在尝试将ascii列表解析为字符串。问题是,有了一些特殊的字符,我就有了torubles。如果我尝试分析此项: 115 097 116 195 168 108 194 183 108 105 116 ,结果应该是“satèl·lit”。我用来解析它的代码是: ASCIIList.add(Character.toString((char) Integer.parseInt(asciiValue))); 但结果是satèl¨lit。我看到了例如“è”->“195168”。我不知道如何正确解

我正在尝试将ascii列表解析为字符串。问题是,有了一些特殊的字符,我就有了torubles。如果我尝试分析此项:

115 097 116 195 168 108 194 183 108 105 116
,结果应该是“satèl·lit”。我用来解析它的代码是:

ASCIIList.add(Character.toString((char) Integer.parseInt(asciiValue)));

但结果是satèl¨lit。我看到了例如“è”->“195168”。我不知道如何正确解析它。

假设您已经将输入拆分为一个字符串数组,代码可能如下所示:

String convertToString(String[] numberArray) {
    byte[] utf8Bytes = new byte[numberArray.length];
    for (int i = 0; i < numberArray.length; i++) {
        utf8Bytes[i] = (byte) Integer.parseInt(numberArray[i]);
    }
    return new String(utf8Bytes, StandardCharsets.UTF_8);
}
String convertToString(String[]numberArray){
byte[]utf8Bytes=新字节[numberArray.length];
for(int i=0;i
所以每个数字变成一个字节。然后使用UTF-8字符集将整个字节数组转换为字符串


UTF-8使用多个字节来表示ASCII范围之外的字符。在您的示例中,它影响“è”和“·”。

它的可能重复项不是ASCII。“显然是UTF-8。”阿莫洛兹说。没有文本,只有编码文本。除了字节值,还必须知道字符编码。当有人说ASCII时,要非常怀疑。很可能不是ASCII码。(另外,您的代码假定为ISO 8859-1。)