批量讀取是否還需要循環(huán)與判斷-1
xxx.read()一個(gè)一個(gè)讀需要判斷!=-1來(lái)停止循環(huán)可以理解,為啥批量讀取也需要循環(huán)和判斷-1,批量讀取不是直接把所有的內(nèi)容都讀到數(shù)組里再全都打印到控制臺(tái)嗎,為什么還需要循環(huán)和判斷-1,我把循環(huán)和判斷-1去掉也能打印完全啊,求大大指點(diǎn)
xxx.read()一個(gè)一個(gè)讀需要判斷!=-1來(lái)停止循環(huán)可以理解,為啥批量讀取也需要循環(huán)和判斷-1,批量讀取不是直接把所有的內(nèi)容都讀到數(shù)組里再全都打印到控制臺(tái)嗎,為什么還需要循環(huán)和判斷-1,我把循環(huán)和判斷-1去掉也能打印完全啊,求大大指點(diǎn)
2016-01-19
舉報(bào)
2016-06-30
我覺(jué)得原因是,即使是批量讀取容量也是有限的,不一定能一次讀完,所以要加循環(huán)
2016-02-21
我們來(lái)看API:
讀取單個(gè)字符/字節(jié),返回所讀的單個(gè)字符(InputStreamReader)/字節(jié)(FileInputStream),否則當(dāng)空或結(jié)尾的時(shí)候返回-1 。
當(dāng)讀到字符/字節(jié)時(shí), 賦值給tmpRead,?
當(dāng)讀到結(jié)尾/該文件本身就是空,返回-1,-1結(jié)束,不存入output流
2016-01-20
需要的,因?yàn)榕慷嗟臅r(shí)候,是讀取你指定的長(zhǎng)度,但是這時(shí)候并不應(yīng)定會(huì)讀完,所以仍然需要判斷