Java中byte[]转换成String有数据丢失现象,原byte[]长度为6714转换成String被截断成6400,请教各位高手
该问题是在HTTP通信过程中发现的,本地接收到的字符数没问题,但是在转换成String过程中出问题了。字符串发送时采用UTF-8的格式,客户端默认也是采用UTF-8,以下方法试过,不管加不加字符集限制都是一样String bString = new String(byets);
主要代码
BufferedHttpEntity bhe = new BufferedHttpEntity(httpResponse.getEntity());
BufferedInputStream bufferedInputStream = new BufferedInputStream(bhe.getContent());
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
bhe.writeTo(byteArrayOutputStream);
String bString = byteArrayOutputStream.toString();
[code="java"]BufferedHttpEntity bhe = new BufferedHttpEntity(httpResponse.getEntity());
BufferedInputStream bufferedInputStream = new BufferedInputStream(bhe.getContent());
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
bhe.writeTo(byteArrayOutputStream);
bhe.close()//要关闭流
String bString = byteArrayOutputStream.toString(); [/code]