保存到包含特殊字符的文件

时间:2016-03-23 10:06:47

标签: java intellij-idea special-characters writetofile

我的程序在我的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文件。

1 个答案:

答案 0 :(得分:2)

确保在Windows上使用与在mac上相同的编码。

IDEA在右下角显示编码。此外,您可以配置编码Settings -> Editor -> File Encodings。 可以配置编码项目范围或每个文件。

此外,请阅读java default file encoding以确保读取和写入文件始终使用相同的字符集。