我在从 java 输入流中读取时遇到问题。我有一个大小为 1024 的缓冲区和一个大小为 29k-31k 的输入流。我在循环中读取了 inputStream ,但第一次读取时只得到 29 个字节,第二次读取时只得到 39 个字节,之后什么也没有。不同的 InputStream 重复相同的行为。(我正在将数据写入输出流,但我看不出这会如何影响第一次读取)
int bytesRead = 0;
byte[] byteBuf = new byte[1024];
OutputStream fileStream = FileUtil.openFileForWrite(saveTo);
bytesRead = reader.read(byteBuf);
while(bytesRead!=-1){
fileStream.write(byteBuf, 0, bytesRead);
bytesRead = reader.read(byteBuf);
}
我错过了什么?
任何帮助表示赞赏:)