問題解決 讀取檔案內容亂碼的解決方案

2021-09-21 01:10:02 字數 1564 閱讀 1393

問題描述

使用filereader & bufferedreader讀取檔案內容,輸出string,獲取的內容為亂碼。**為:

/**

* 從檔案讀內容

* @param filepath

* @return

*/public

static string readfromfile

(string filepath)

}catch

(exception e)

}catch

(exception e)

finally

catch

(ioexception e)}if

(filereader != null)

catch

(ioexception e)}}

return result;

}

解決方案

方法一還是讀取以上的檔案內容,讀取檔案內容後,將string轉為bytes陣列,再從bytes陣列轉為string,並指定編碼

bytes [

] jsonbytes = jsonstr.

getbytes()

;string json =

newstring

(jsonbytes,

"utf-8"

);

方法二

先讀取檔案內容為bytes陣列,使用bytearrayoutputstream,**如下:

public

static

byte

filetobytes

(string filepath)

fis.

close()

; bos.

close()

; buffer = bos.

tobytearray()

;}catch

(filenotfoundexception e)

catch

(ioexception e)

return buffer;

}

再將bytes陣列轉為string,並指定編碼格式

byte

jsonbytes = fileutil.

filetobytes

(jsonfile)

;string json =

newstring

(jsonbytes,

"utf-8"

);

方法三

初始化bufferedreader時候,使用inputstreamreader並指定編碼格式來替換filereader

bufferedreader br=

newbufferedreader

(new

inputstreamreader

(new

fileinputstream

(filename)

,"utf-8"))

;

Python中讀取檔案亂碼問題解決方案

對開發者來說,最讓人頭疼的問題之一莫過於讀寫檔案的時候,由於編碼千差萬別,出現亂碼問題。這時候我們可以使用chardet包來檢測檔案型別,然後再根據型別來decode,下面看舉個例子 案例展示 我在 print data.decode type encoding 這一行打個斷點,dbug一下,可以看...

MySql 亂碼問題解決

最近連線mysql資料庫的時候,我也遇到了中文亂碼問題 呵呵,很頭疼哦!我用的資料庫是mysql5.0,所以,我先用google,baidu等上網搜了一下解決方案,自己也按著方法反覆測試了一下午,終於解決了我的jsp mysql5.0 tomcat 5.0.29出現的亂碼問題。解決方案如下 1 在d...

RARASAFE亂碼問題解決

試用ralasafe1.2 遇到中文亂碼問題,網上找了下解決方案,不全,重新做了個整理 1.瀏覽器頁面全部使用utf 8編碼方式,當瀏覽器提交資料到web伺服器時,對提交資料做utf 8編碼 encoding filter.setcharacterencodingfilter encoding ut...