fileinputstream中文亂碼, 在Java中使用FileInputStream讀取txt等文檔時(shí),中文會(huì)產(chǎn)生亂碼,因?yàn)橐粋€(gè)中文對(duì)應(yīng)兩個(gè)字節(jié)(負(fù)數(shù)),也就是說(shuō)讀取中文對(duì)應(yīng)的字節(jié)數(shù)應(yīng)該是偶數(shù);而英語(yǔ)對(duì)應(yīng)一個(gè)字節(jié)存儲(chǔ)。
FileInputStream每次讀取一個(gè)字節(jié)數(shù)組時(shí),讀取的中文字節(jié)數(shù)可能是奇數(shù),即只讀取一半的中文字節(jié),導(dǎo)致亂碼。
解決方案是:
try {
fis=new FileInputStream(file);
改成UTF-8試試緩沖讀取器br=新緩沖讀取器(reader);弦線;while ((line=br.readLine())!=null){ system。出去。println(line);} br。close();讀者。close();} catch(Exception e){ e . printstacktrace();}最后{ if (fis!=null){ try { fis。close();} catch(io異常e){ e . printstacktrace();} } }
關(guān)于解決fileinputstream中文亂碼問(wèn)題,我們就知道這么多!
fileinputstream中文亂碼,以上就是本文為您收集整理的fileinputstream中文亂碼最新內(nèi)容,希望能幫到您!更多相關(guān)內(nèi)容歡迎關(guān)注。