課程
/后端開發(fā)
/Java
/文件傳輸基礎(chǔ)——Java IO流
in,read(buf,0,buf.length)不是一次性讀完嗎?為什么還要使用while循環(huán)并且用0xff
2017-09-11
源自:文件傳輸基礎(chǔ)——Java IO流 4-2
正在回答
0到buf.length的長度是你定義的byte數(shù)組的長度
你一次性最多讀取的字節(jié)長度是byte數(shù)組長度,但是你的文件字節(jié)數(shù)往往是多于你定義的byte數(shù)組長度
所以就用到了for循環(huán),0xff是取低八位,八位為一個字節(jié)?。?!
望采納QAQ
in,read(buf,0,buf.length)?
這個方法的調(diào)用只會讀取buf。length個字節(jié) ?如果文件內(nèi)容大于這個字節(jié)數(shù)量的話 一次性就讀不完了
就需要循環(huán)讀取了
for循環(huán)中的bytes是限定了所能存儲的數(shù)據(jù)大小的,如果讀取到的字節(jié)大小超過了你循環(huán)中的大小,那么后面的數(shù)據(jù)就讀取不到了。 但是利用while循環(huán),只要In.read() 不是-1,程序就會一直執(zhí)行,一直讀取數(shù)據(jù)
數(shù)據(jù)很有可能比你那個buf字符數(shù)組大的多 不只一個length有可能千千萬萬個length ?不循環(huán),怎么讀的完。
oxff是取低八位,因為讀寫都是以字節(jié)為單位的,而8位就是一個字節(jié)。
舉報
為您介紹IO流的使用,以及對象的序列化和反序列化的內(nèi)容
5 回答為什么while((b=in.read())!=-1)會產(chǎn)生循環(huán)?
4 回答4.3中的Copy方法下為什么要有while?
1 回答關(guān)于while循環(huán)的疑惑
4 回答while循環(huán)是不是存在問題的
1 回答為什么 不用list容器來裝讀到的byte?這樣不是一次就能讀完了嗎??
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)微信公眾號
2018-05-22
0到buf.length的長度是你定義的byte數(shù)組的長度
你一次性最多讀取的字節(jié)長度是byte數(shù)組長度,但是你的文件字節(jié)數(shù)往往是多于你定義的byte數(shù)組長度
所以就用到了for循環(huán),0xff是取低八位,八位為一個字節(jié)?。?!
望采納QAQ
2017-10-21
in,read(buf,0,buf.length)?
這個方法的調(diào)用只會讀取buf。length個字節(jié) ?如果文件內(nèi)容大于這個字節(jié)數(shù)量的話 一次性就讀不完了
就需要循環(huán)讀取了
2017-09-13
for循環(huán)中的bytes是限定了所能存儲的數(shù)據(jù)大小的,如果讀取到的字節(jié)大小超過了你循環(huán)中的大小,那么后面的數(shù)據(jù)就讀取不到了。 但是利用while循環(huán),只要In.read() 不是-1,程序就會一直執(zhí)行,一直讀取數(shù)據(jù)
2017-09-11
數(shù)據(jù)很有可能比你那個buf字符數(shù)組大的多 不只一個length有可能千千萬萬個length ?不循環(huán),怎么讀的完。
oxff是取低八位,因為讀寫都是以字節(jié)為單位的,而8位就是一個字節(jié)。