多个文件ANSI到utf-8转换器

时间:2011-03-02 19:10:45

标签: utf-8 converter

我可以使用哪个程序将多个文件从ANSI转换为UTF-8?

2 个答案:

答案 0 :(得分:1)

在unix上,使用iconv实用程序。

答案 1 :(得分:1)

您可以使用Windows脚本执行此操作:

var indir = "in";
var outdir = "out";
function ansiToUtf8(fin, fout) {
    var ansi = WScript.CreateObject("ADODB.Stream");
    ansi.Open();
    ansi.Charset = "x-ansi";
    ansi.LoadFromFile(fin);
    var utf8 = WScript.CreateObject("ADODB.Stream");
    utf8.Open();
    utf8.Charset = "UTF-8";
    utf8.WriteText(ansi.ReadText());
    utf8.SaveToFile(fout, 2 /*adSaveCreateOverWrite*/);
    ansi.Close();
    utf8.Close();
}
var fso = WScript.CreateObject("Scripting.FileSystemObject");
var folder = fso.GetFolder(indir);
var fc = new Enumerator(folder.files);
for (; !fc.atEnd(); fc.moveNext()) {
    var file = fc.item();
    ansiToUtf8(indir+"\\"+file.name, outdir+"\\"+file.name);
}

此文件 ansi2utf8.js 可以从命令行运行,如下所示:

cscript /Nologo ansi2utf8.js

脚本需要 out 目录中,但可以修改以做更灵活的事情。

ansi2utf8\ansi2utf8.js
ansi2utf8\in
ansi2utf8\out
ansi2utf8\in\bar.txt
ansi2utf8\in\foo.txt