我们在做的一个APP语言聊天时有杂音,经过一段时间的调试之后,最后确定了问题是读取时字节的问题。比如之前是这么写的
byte[] buf=new byte[4096];
ByteArrayInputStream bais=new ByteArrayInputStream(buf);
ByteArrayOutputStream baos=new ByteArrayOutputStream();
while(bais.read()!=-1){
try {
baos.write(buf);
} catch (IOException e) {
e.printStackTrace();
}
}
改为:
byte[] buf=new byte[4096];
ByteArrayInputStream bais=new ByteArrayInputStream(buf);
ByteArrayOutputStream baos=new ByteArrayOutputStream();
int n=0;
while((n=bais.read())!=-1){
baos.write(buf,0,n);
}