将带有ascii值的字符串转换为普通字符串



下面是我的代码:

int availableBytes = inputStream.available();
if (availableBytes > 0) {
    inputStream.read(readBuffer, 0, availableBytes);
    System.out.println(new String(readBuffer, 0, availableBytes));
Reponse = new String(readBuffer, "UTF-8");
System.out.println(Reponse);

我的问题:

所以我得到了我的" response "变量,字符串类型,ascii值我想是因为当我做" response "的sysout时它显示了一个3 "的正方形,里面有一个问号。

那么是否可以将此字符串值转换为整数形式的ascii值?

Java String不是字节序列(带符号8位),而是字符序列(无符号16位)。还要阅读构造函数的javadoc:

通过解码指定的字节子数组来构造一个新的String使用平台的默认字符集。新字符串的长度为字符集的一个函数,因此可能不等于的长度子数组。

它可能不像你期望的那样工作-它不会将每个字节转换成一个字符!

相关内容

  • 没有找到相关文章

最新更新