你的位置:首页 > Java教程

[Java教程]解決BufferedReader读取UTF


读取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"));