我需要以编程方式将一组 *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/