我正在开发Android上的蓝牙应用程序。这个inputStream来自连接套接字。我想读取一定长度的字节。Java InputStream。有没有正确和有效的方法?
我第一次尝试的方法:
byte[] data = new byte[lengthtoread];
for (int i = 0; i < data.length; i++)
data[i] =(byte) mmInStream.read() ;
我发现它过于缓慢。
Sencond方式:
byte[] data = new byte[lengthtoread];
mmInStream.read(data, 0, lengthtoread);
在此我发现它不读取数据时完全长阅读过大
请人帮我?
你是怎么知道的(第二种方法)? 'lengthtoread'的价值是什么?目标文件大小是多少? – 2013-07-15 20:50:12
lengthtoread有时大到有时会高达90000或多或少 –
那么为什么你要一次读全部?这不是一个好主意,试图缓冲数据 – 2013-07-16 18:27:01