InputStream.read(byte[]) 方法如何知道已经到达“流的末尾”并返回“-1”?
返回“-1”的所有条件是什么?
如何检测“流的末尾”(不发送包含要读取的总字节数的整数)?
使用示例:
InputStream input = socket.getInputStream();
ByteArrayOutputStream baos = new ByteArrayOutputStream();
byte[] buffer = new byte[1024];
for(int size = -1; (size = input.read(buffer)) != -1; ) {
baos.write(buffer, 0, size);
}