java - 使用 Java 更改现有文件的编码?

标签 java file encoding

我需要以编程方式将一组 *nix 脚本的编码从 Java 更改为 UTF-8。我不会给他们写任何东西,所以我试图找到最简单|最快的方法来做到这一点。文件不是太多,也不是那么大。我可以:

  • 使用将 UTF-8 设置为编码的 OutputStream“写入”一个空字符串
  • 因为我已经在使用 FileUtils(来自 Apache Commons),所以我可以读|写这些文件的内容,将 UTF-8 作为编码传递

没什么大不了的,但是以前有人遇到过这种情况吗?这两种方法都有缺点吗?

最佳答案

根据要求,由于您使用的是 commons io,这里是示例代码(随风进行错误检查):

import java.io.File;
import java.io.IOException;
import org.apache.commons.io.FileUtils;

public class Main {
    public static void main(String[] args) throws IOException {
        String filename = args[0];
        File file = new File(filename);
        String content = FileUtils.readFileToString(file, "ISO8859_1");
        FileUtils.write(file, content, "UTF-8");
    }
}

关于java - 使用 Java 更改现有文件的编码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10093178/

相关文章:

php - 通过 PHP 返回图像并使用 AJAX 设置为 src

c - 了解 fgetc 程序

C-WinAPI : Why does UTF-8 encoded characters show as Chinese in Listview?

python - gbk和cp936有什么区别

java - 为什么我得到不同的 java 版本

java - GWT + Glassfish 4 : Error 404 for RPC servlet

java - processbuilder - linux - 提示未在输出流中捕获

java - 将现有的java动态web项目导入Eclipse

c++ - 我们可以在 C++ 中使用 "FILE"吗?

encoding - 无法在 Sublime Text 2 中编码 HTML 特殊字符