问答详情
源自:4-2 字节流之文件输入流FileInputStream-2

buf是byte数组,不管buf多大,只要按照下面这么写就一定会把文件内容读完是么

while((bytes=fis1.read(buf, 0, buf.length))!=-1)

提问者:泰兰德 2015-08-30 10:36

个回答

  • 忘性最大的人
    2015-08-30 13:53:05
    已采纳

    每次读取buf数组长度的数据,当读到文件末尾时,因为二进制流读取是读0或1,当读到-1时说明文件已经读到末尾,此时文件读取完毕。上面的循环就是在反复读取文件,直到读到文件末尾的-1,文件读完。

  • DLZer
    2015-10-12 20:19:40

    每判断一次while循环的条件,就会对文件进行一次读取(保存在缓冲数组中),直到最后,文件读取完毕,bytes==-1,循环结束……