繁体   English   中英

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

[英]How to save text file with UTF-8 encoding in java?

我在使用Java以UTF-8格式保存文本文件时遇到问题。 当我单击另存为生成的文本文件时,它以文本格式提供ANSI,但不提供UTF-8格式。 以下是我在创建文件时编写的代码:

    String excelFile="";

    excelFile = getFullFilePath(fileName);
    File file = new File(excelFile + fileName,"UTF-8");
    File output = new File(excelFile,"UTF-8");

    FileUtils.writeStringToFile(file, content, "UTF-8");

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

代替使用File,而是创建FileOutputStream。 尝试这个。

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

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM