qq_萍萍儿_0
2016-04-05 10:57
int read = in.read(buf, 0, buf.length);好疑惑,in.read(buf, 0, buf.length)这个方法不是一次性读完了嘛,怎么还有可能为-1呢??
in.read(buf, 0, buf.length)这个方法不是一次性读完了嘛?
首先对于你的这个理解是错误的,因为这个方法正确的理解是把文件内容的字节读入到字节数组buf中,但是文件内容的字节有可能大于字节数组buf的长度,那么文件内容就一次读不完。
in.read(buf, 0, buf.length)这个方法可能为-1吗
再来说说这个方法的返回值,这个方法返回的是实际读取到字节数组中的字节的数量。官方api明确指出,如果已经达到文件的末尾,返回值为-1.
就是相当于我们的文件结尾
文件传输基础——Java IO流
133754 学习 · 1030 问题
相似问题