問題描述:java
最近作項目,要抓取遠程服務器上返回的json,使用BufferedReader讀取獲取到的內容,在MyEclipse中跑的時候沒有問題,可是打成jar包跑的時候json內容中文部分就亂碼了。json
緣由:服務器
可能和MyEclipse自己設置的編碼有關係,MyEclipse運行環境設置的是utf-8,導出成jar以後,BufferedReader採用的是操做系統默認的字符編碼。編碼
解決方案:spa
BufferedReader in = new BufferedReader(new InputStreamReader(new FileInputStream(file)));
改成操作系統
BufferedReader in = new BufferedReader(new InputStreamReader(new FileInputStream(file), "utf-8"));