課程
/后端開發(fā)
/Java
/文件傳輸基礎(chǔ)——Java IO流
老師說中屬于utf-16be,可以單獨(dú)讀出來,但是怎么單獨(dú)讀出來呢?
2016-04-04
源自:文件傳輸基礎(chǔ)——Java IO流 3-1
正在回答
其實(shí)寫入'a' 不會(huì)干擾,寫入'a'的后8位正好符合gbk編碼,而是中間寫入了int數(shù),這個(gè)收到了干擾。
只要你的編碼方式保持一致就可以了~
你這“中”字前面有沒有寫入其他的,有時(shí)候也是受到前面的干擾,比如write("A");這樣的,寫入只寫了一個(gè)字節(jié),但是一個(gè)字符卻是兩個(gè)字節(jié),但是讀出來的時(shí)候只是1個(gè)字節(jié),所以讀到后面的時(shí)候就可能會(huì)出現(xiàn)問題?!静贿^我們也能看出來這1個(gè)字節(jié)表示的是這個(gè)字符】
你也可以利用seek()來確定確定“中”字的位置,然后開始讀,這樣的話,都不會(huì)出現(xiàn)問題,就是稍微有一丟丟麻煩。
樓上的應(yīng)該就是利用系統(tǒng)默認(rèn)的編碼方式我gbk。
leowei
我這也沒有出亂碼啊 ?直接就讀出來了?
??????
占個(gè)地 ?誰能講解講解
helloworld2008
在中的起始位置讀兩個(gè)字節(jié)到字節(jié)數(shù)組b里,再轉(zhuǎn)化成utf-16be的字符串就可以了。
String s=new String(b,"utf-16be");
舉報(bào)
為您介紹IO流的使用,以及對(duì)象的序列化和反序列化的內(nèi)容
2 回答怎么輸出漢字
2 回答怎么把“中”讀取出來
6 回答dos.writeChars()寫入的字符串,怎么讀出
2 回答為什么在以下代碼中i要被dis讀取兩次才能正常輸出?
2 回答我怎么才能直接讀出文件內(nèi)容呢,比如文件是我愛你中華,我要讀出的是文字,該如何操作
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號(hào)-11 京公網(wǎng)安備11010802030151號(hào)
購(gòu)課補(bǔ)貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動(dòng)學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號(hào)
2016-10-31
其實(shí)寫入'a' 不會(huì)干擾,寫入'a'的后8位正好符合gbk編碼,而是中間寫入了int數(shù),這個(gè)收到了干擾。
2016-07-20
只要你的編碼方式保持一致就可以了~
你這“中”字前面有沒有寫入其他的,有時(shí)候也是受到前面的干擾,比如write("A");這樣的,寫入只寫了一個(gè)字節(jié),但是一個(gè)字符卻是兩個(gè)字節(jié),但是讀出來的時(shí)候只是1個(gè)字節(jié),所以讀到后面的時(shí)候就可能會(huì)出現(xiàn)問題?!静贿^我們也能看出來這1個(gè)字節(jié)表示的是這個(gè)字符】
你也可以利用seek()來確定確定“中”字的位置,然后開始讀,這樣的話,都不會(huì)出現(xiàn)問題,就是稍微有一丟丟麻煩。
樓上的應(yīng)該就是利用系統(tǒng)默認(rèn)的編碼方式我gbk。
2016-04-13
我這也沒有出亂碼啊 ?直接就讀出來了?
??????
占個(gè)地 ?誰能講解講解
2016-04-05
在中的起始位置讀兩個(gè)字節(jié)到字節(jié)數(shù)組b里,再轉(zhuǎn)化成utf-16be的字符串就可以了。
String s=new String(b,"utf-16be");