找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
z记录 Z记录 网站编辑 查看内容

GBK转UTF-8 教程+批量工具下载地址

2023-4-20 23:00| 发布者: zouyang5| 查看: 20| 评论: 0|来自: Z记录

摘要: 写代码的时候,常常会遇到字符编码的问题。比如 GBK 编码的代码文件以 UTF-8 编码打开就会造成中文乱码,而且这种情况还很常见,比如 Eclipse 中的 Java 代码和 Visual Studio 中的 C++ 代码都是默认 GBK 编码的。 ...


写代码的时候,常常会遇到字符编码的问题。比如 GBK 编码的代码文件以 UTF-8 编码打开就会造成中文乱码,而且这种情况还很常见,比如 Eclipse 中的 Java 代码和 Visual Studio 中的 C++ 代码都是默认 GBK 编码的。

而大家知道,出于通用性的考虑,最好还是使用 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 仓库里。


路过

雷人

握手

鲜花

鸡蛋

QQ|z记录博客|z记录网盘|Archiver|手机版|小黑屋|z记录

GMT+8, 2024-11-21 18:24 , Processed in 0.079089 second(s), 16 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

返回顶部