解決BufferedReader读取UTF-8文件中文乱码(转)

9/6/2015来源:Java教程人气:1192

解決BufferedReader读取UTF-8文件中文乱码(转)

读取txt文件乱码

BufferedReader read = new BufferedReader(new FileReader(new File(filename)));  

解决办法:

InputStreamReader isr = new InputStreamReader(new FileInputStream(file), "UTF-8");  BufferedReader read = new BufferedReader(isr);  

因为InputStreamReader和BufferedReader 都继承自Reader,而BufferedReader 的构造器又是Reader.

Writer也是一样的处理

FileOutputStream writerStream = new FileOutputStream(filePath, true);  BufferedWriter oWriter = new BufferedWriter(new OutputStreamWriter(writerStream, "UTF-8"));