如何在java中使用UTF-8编码保存文本文件?

时间:2016-10-31 06:10:42

标签: java file-io encoding utf-8

我在使用java保存UTF-8格式的文本文件时遇到问题。当我点击生成的文本文件的保存时,它将ANSI作为文本格式而不是UTF-8。下面是我在创建文件时编写的代码:

kernel=... mem=512M ...

在创建文本文件时,我使用的是UTF-8编码,但该文件在保存时仍然显示编码为ANSI。 请帮助。

2 个答案:

答案 0 :(得分:1)

不使用File,而是创建FileOutputStream。 试试这个。

Writer out = new BufferedWriter(new OutputStreamWriter(
    new FileOutputStream("outfilename"), "UTF-8"));
try {
    out.write(aString);
} finally {
    out.close();
}

答案 1 :(得分:0)

我遇到了与此非常相似的问题,我解决了使用UTF-8编码保存原始文件的问题。在这种情况下,请转到excel文件并再次保存,或创建新文件并复制内容,并确保其编码为UTF-8。此链接提供了有关如何使用UTF-8编码保存excel文件的教程:https://help.surveygizmo.com/help/encode-an-excel-file-to-utf-8-or-utf-16。最多你的代码似乎是正确的。