如何使用Java编写UTF-8文件?

2022-08-31 06:26:42

我有一些当前的代码,问题是它创建了一个1252代码页文件,我想强制它创建一个UTF-8文件

任何人都可以帮我这个代码,正如我所说,它目前有效...但我需要强制保存utf..我可以传递一个参数或其他东西吗?

这就是我所拥有的,任何帮助真的很感激

var out = new java.io.FileWriter( new java.io.File( path )),
        text = new java.lang.String( src || "" );
    out.write( text, 0, text.length() );
    out.flush();
    out.close();

答案 1

不使用 ,创建一个 .然后,可以将其包装在 中,这样就可以在构造函数中传递编码。然后,您可以将数据写入到资源试用语句中:FileWriterFileOutputStreamOutputStreamWriter

try (OutputStreamWriter writer =
             new OutputStreamWriter(new FileOutputStream(PROPERTIES_FILE), StandardCharsets.UTF_8))
    // do stuff
}

答案 2

试试这个

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