使用c#和记事本将utf16文件转换为utf8

本文关键字:文件 转换 utf8 utf16 记事本 使用 | 更新日期: 2023-09-27 18:18:13

我有一个Unicode 16格式的文件。或者在记事本中点击文件>另存为…记事本只是将文件作为UNICODE读取。我的其他选项是utf8、UNICODE和TXT。我不得不在记事本中手动重新保存此文件为utf8。

有没有办法让c#为我做这件事?

谢谢,杰克

使用c#和记事本将utf16文件转换为utf8

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;
    }
}

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

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