我的程序在我的MAC中运行正常,但是当我在WINDOWS上尝试时,所有特殊字符都变为%$& ..我是挪威语,所以特殊字符大多是æøå。
这是我用来写入文件的代码:
File file = new File("Notes.txt");
if (file.exists() && !file.isDirectory()) {
try(PrintWriter pw = new PrintWriter(new BufferedWriter(new FileWriter("Notes.txt", true)))) {
pw.println("");
pw.println("*****");
pw.println(notat.getId());
pw.println(notat.getTitle());
pw.println(notat.getNote());
pw.println(notat.getDate());
pw.close();
}catch (Exception e) {
//Did not find file
}
} else {
//Did not find file
}
现在我如何确保在两个操作系统中都能正确编写特殊字符?
注意:我使用IntelliJ,我的程序是.jar文件。
答案 0 :(得分:2)
确保在Windows上使用与在mac上相同的编码。
IDEA
在右下角显示编码。此外,您可以配置编码Settings -> Editor -> File Encodings
。
可以配置编码项目范围或每个文件。
此外,请阅读java default file encoding以确保读取和写入文件始终使用相同的字符集。