而大家知道,出于通用性的考虑,最好还是使用 UTF-8 编码。因此这时就需要将 GBK 编码转换为 UTF-8 了。 背景比较笨的方法是用代码编辑器打开,然后以 UTF-8 编码保存。 文件少还好说,文件多起来就是个很累人的事。 利用代码转换用代码来实现转换也是挺简单的事:以 GBK 编码读取文件的内容,再以 UTF-8 编码写入新文件或者覆盖原文件即可。 下面是使用 C# 的示例代码: var content = File.ReadAllText(currentFile, Encoding.Default); // 以操作系统的默认字符集(在简体中文操作系统下,为 GBK)读取内容 var utf8Encoding = new UTF8Encoding(bomFlag); // 是否包含 BOM(byte order mark,字节顺序标记) var path = Path.Combine(output, fileName); // 将输出目录和文件名组合成新文件的路径 var newFileStream = File.Create(path); // 创建新文件 newFileStream.Close();File.WriteAllText(path, content, utf8Encoding); // 以 UTF-8 编码写入新文件 批量工具 使用代码转换多个文件或者一个文件夹下的文件也是很简单的事,这里就不赘述了。 具体使用时,需要选择一或多个文件,或者选择文件夹。 但是控制台应用程序使用起来也是个麻烦,于是作者索性做了个小工具,放在 GitHub 仓库里。 |