課程
/后端開發(fā)
/Java
/文件傳輸基礎(chǔ)——Java IO流
批量讀取的時候,數(shù)組的大小不能夠一次性讀完,視頻中的案例是不是就沒有讀完大文件的所有字節(jié)。
2015-09-09
源自:文件傳輸基礎(chǔ)——Java IO流 4-2
正在回答
for循環(huán)輸出buf數(shù)組中的內(nèi)容, while循環(huán)控制文件是否讀完;
?read()返回的讀入緩沖區(qū)的字節(jié)總數(shù),如果因?yàn)橐呀?jīng)到達(dá)文件末尾而沒有更多的數(shù)據(jù),則返回 -1。
從此輸入流中將最多 b.length 個字節(jié)的數(shù)據(jù)讀入一個 byte 數(shù)組中。在某些輸入可用之前,此方法將阻塞。
我的理解是一個水池,大小是buf.length ?放滿水后(存滿了數(shù)據(jù))從另個通道排出, 然后進(jìn)水口在繼續(xù)進(jìn)水(繼續(xù)讀取數(shù)據(jù),從0到buf.length)當(dāng)最后一次排水結(jié)束 進(jìn)水口沒有進(jìn)水了 ?返回了-1 ?觸發(fā)了whlie的條件 ?跳出了該代碼段; ?以上是個人的一些愚見 ?希望大家能夠告訴我理解錯誤的地方
苦茶好好喝喝 提問者
不是太懂。假如一個水池有100L的水,有個11 L的容器取水,每次取11 L,前9次都是滿的11L,最后一次取水水池只剩1L的水了。容器是把這1L的水取走就判斷返回-1了,還是最后一次取走后再一次循環(huán)判斷是否返回-1?
舉報(bào)
為您介紹IO流的使用,以及對象的序列化和反序列化的內(nèi)容
4 回答求教批量讀取
1 回答關(guān)于文件批量讀取的起始位置的問題
4 回答單字節(jié)讀取時Integer.toHexString(b) 批量讀取時Integer.toHexString(buf[i]&0xff)
2 回答帶緩沖的應(yīng)該比批量的讀取快吧?帶緩沖的批量比批量快吧?
3 回答批量讀取是否還需要循環(huán)與判斷-1
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網(wǎng)安備11010802030151號
購課補(bǔ)貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號
2015-10-18
for循環(huán)輸出buf數(shù)組中的內(nèi)容, while循環(huán)控制文件是否讀完;
?read()返回的讀入緩沖區(qū)的字節(jié)總數(shù),如果因?yàn)橐呀?jīng)到達(dá)文件末尾而沒有更多的數(shù)據(jù),則返回 -1。
從此輸入流中將最多 b.length 個字節(jié)的數(shù)據(jù)讀入一個 byte 數(shù)組中。在某些輸入可用之前,此方法將阻塞。
我的理解是一個水池,大小是buf.length ?放滿水后(存滿了數(shù)據(jù))從另個通道排出, 然后進(jìn)水口在繼續(xù)進(jìn)水(繼續(xù)讀取數(shù)據(jù),從0到buf.length)當(dāng)最后一次排水結(jié)束 進(jìn)水口沒有進(jìn)水了 ?返回了-1 ?觸發(fā)了whlie的條件 ?跳出了該代碼段; ?以上是個人的一些愚見 ?希望大家能夠告訴我理解錯誤的地方
2016-09-01
不是太懂。假如一個水池有100L的水,有個11 L的容器取水,每次取11 L,前9次都是滿的11L,最后一次取水水池只剩1L的水了。容器是把這1L的水取走就判斷返回-1了,還是最后一次取走后再一次循環(huán)判斷是否返回-1?