-
1 # Tech科技圈
-
2 # 清酒一生小舍
解決方案是:
1.要統一編碼,java工程的編碼,txt文字編碼,java工程中的java文字編碼都統一為utf-8;
2.利用 InputStreamReader(new FileInputStream(fileUrl), "utf-8")將文字再次設定為utf-8
InputStreamReader isr;
try {
isr = new InputStreamReader(new FileInputStream(fileUrl), "utf-8");
BufferedReader read = new BufferedReader(isr);
String s=null;
List<String> list = new ArrayList<String>();
while((s=read.readLine())!=null)
{
//System.out.println(s);
if(s.trim().length()>1){
list.add(s.trim());
}
}
System.out.println("OK!");
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
-
3 # 李CODER
應該不會有亂碼的問題的。因為無論文字制式用什麼編碼,都是以二進位制的方式來儲存的。因此無論你怎麼去讀,你都是讀那個二進位制,不會亂碼的。
回覆列表
有亂碼,說明使用的字元編碼沒對應,在new一個reader的時候設定好編碼方式,另外可以用notepad++檢視文字的編碼方式。