一般的我们使用byte接收读取到的数据,若数据没有达到byte定义的大小时,我们直接将byte转换为String则会出现乱码的情况,在这种情况下应该基于read的返回值来转换byte,否则将产生乱码的情况,
下面是一个简单的示例:
java" id="highlighter_507264">
1
2
3
4
5
6
7
8
9
10
|
package com.javaio.myinputstream;
public class MyConsole {
public static void main(String argv[]) throws Exception {
System.out.println( "please input something:" );
byte [] b = new byte [ 1024 ];
int len = System.in.read(b);
System.out.println( "you input is:" + new String(b, 0 , len, "UTF-8" ));
}
}
|
输出结果
1
2
3
|
please input something:
asdfasdf
you input is:asdfasdf
|
以上这篇java 将byte中的有效长度转换为String的实例代码就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。