1、JAVA读取文件,避免中文乱码。
/**
* 读取文件内容
*
* @paramfilePathAndName
* String 如 c:\\1.txt绝对路径
* @return boolean
*/
public static String readFile(String filePathAndName) {
String fileContent ="";
try {
File f = new File(filePathAndName);
if(f.isFile()&&f.exists()){
InputStreamReaderread = new InputStreamReader(new FileInputStream(f),"UTF-8");
BufferedReaderreader=new BufferedReader(read);
String line;
while ((line =reader.readLine()) != null) {
fileContent += line;
}
read.close();
}
} catch (Exception e){
System.out.println("读取文件内容操作出错");
e.printStackTrace();
}
return fileContent;
}
2、JAVA写入文件,避免中文乱码。
public static void writeFile(String filePathAndName, StringfileContent) {
try {
File f = newFile(filePathAndName);
if (!f.exists()) {
f.createNewFile();
}
OutputStreamWriterwrite = new OutputStreamWriter(new FileOutputStream(f),"UTF-8");
BufferedWriterwriter=new BufferedWriter(write);
//PrintWriter writer= new PrintWriter(new BufferedWriter(new FileWriter(filePathAndName)));
//PrintWriter writer= new PrintWriter(new FileWriter(filePathAndName));
writer.write(fileContent);
writer.close();
} catch (Exception e){
System.out.println("写文件内容操作出错");
e.printStackTrace();
}
}
我试过写入的时候用
1、PrintWriter writer = new PrintWriter(new BufferedWriter(newFileWriter(filePathAndName)));
2、PrintWriter writer = new PrintWriter(newFileWriter(filePathAndName));
都不行。
以上代码经过运行可以避免中文乱码,关键是要编码转换。
JAVA读取文件,避免中文乱码
最新推荐文章于 2024-05-29 16:30:30 发布
本文提供Java中读取和写入文件时避免中文乱码的方法,包括使用UTF-8编码和正确处理文件操作流程。
201

被折叠的 条评论
为什么被折叠?



