byte[]数组转 String长度超出问题

byte[]数组转 String长度超出问题,有时候我们会遇到接收到的byte[]数组中的数据过大,如果直接用String函数转的话,会出现数据被截断的情况,造成数据不完整,因为超出了String 的缓冲。。 直接附上解决办法: if(conn.g...

有时候我,我们会遇到接收到的byte[]数组中的数据过大,如果直接用String函数转的话,会出现数据被截断的情况,造成数据不完整,因为超出了String 的缓冲。。

直接附上解决办法:

attachments-2017-11-o9ewh7mu5a0e981491c8d.

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" );
}
  • 发表于 2017-11-17 16:13
  • 阅读 ( 2998 )
  • 分类:Java

3 条评论

请先 登录 后评论
不写代码的码农
魏延

IT

5 篇文章

作家榜 »

  1. 威猛的小站长 124 文章
  2. Jonny 65 文章
  3. 江南烟雨 36 文章
  4. - Nightmare 33 文章
  5. doublechina 31 文章
  6. HJ社区-肖峰 29 文章
  7. 伪摄影 22 文章
  8. Alan 14 文章