使用C#和Notepad将UTF 16文件转换为UTF 8

时间:2011-12-15 23:27:23

标签: c# utf-8

我有一个Unicode 16的文件。或者当我转到File>时在记事本中。另存为...记事本只是将文件读取为UNICODE。我的其他选择是UTF 8,UNICODE和TXT。我不得不在记事本中手动将此文件重新保存为UTF 8。

有没有办法让C#为我做这个?

谢谢,

杰克

2 个答案:

答案 0 :(得分:1)

离。 ConsoleApplication

using System;
using System.IO;
using System.Text;

class ConvertUTF16toUTF8 {
    static int Main(string[] argv){
        if(argv.Length != 2){
            Console.WriteLine("conv InputFilePath OutputFilePath");
            return -1;
        }
        File.WriteAllText(argv[1], File.ReadAllText(argv[0], Encoding.Unicode), Encoding.UTF8);
        return 0;
    }
}

答案 1 :(得分:0)

取决于您使用什么方法来编写文件。您通常可以指定编码。

File.WriteAllText(path, contents, Encoding.UTF8)