有时候我,我们会遇到接收到的byte[]数组中的数据过大,如果直接用String函数转的话,会出现数据被截断的情况,造成数据不完整,因为超出了String 的缓冲。。
直接附上解决办法:
if(conn.getInputStream() != null){
InputStream in = conn.getInputStream();
byte[] buffer = new byte[1024];
ByteArrayOutputStream baos = new ByteArrayOutputStream();
for ( int len = 0; (len = in.read(buffer)) > 0;) {
baos.write(buffer, 0, len);
}
result = new String(baos.toByteArray(), "utf-8" );
}
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!