小编Dmi*_*riy的帖子

Java int 数组到 StringBuilder

如何在while循环中将带有UTF-8字符串的int数组转换为StringBuilder?例如:
int array: 71, 73, 70, 56, 57, 97, 149, 0, 55, 0, 247...
结果字符串: GIF89a• €÷€ €€€ÀÜÀ|Êð*?ª*?ÿ ...
该行包含拉丁文、西里尔文和亚洲字符,以及各种符号和数字

do buffer.append((char)num[++i]);
while((byte)buffer.charAt(buffer.length()-1) != -1);
Run Code Online (Sandbox Code Playgroud)

此方法分解所有非拉丁字符。

java arrays stringbuilder integer

5
推荐指数
1
解决办法
2468
查看次数

Java InputStreamReader和UTF-8字符集

我使用InputStreamReader传输压缩图像。InflaterInputStream用于解压缩图像

InputStreamReader infis =
   new InputStreamReader(
      new InflaterInputStream( download.getInputStream()), "UTF8" );
do {
   buffer.append(" ");
   buffer.append(infis.read());
} while((byte)buffer.charAt(buffer.length()-1) != -1);
Run Code Online (Sandbox Code Playgroud)

但是所有非拉丁字符都变为“?” 并且图像损坏了http://s019.radikal.ru/i602/1205/7c/9df90800fba5.gif

通过传输未压缩的图像,我使用了BufferedReader,并且一切正常

BufferedReader is =
   new BufferedReader(
      new InputStreamReader( download.getInputStream()));
Run Code Online (Sandbox Code Playgroud)

java character utf-8 inputstreamreader

0
推荐指数
1
解决办法
3833
查看次数