背景
由于一些工具還是使用GBK為默認(rèn)格式導(dǎo)致铺董,經(jīng)常在會(huì)遇到一些項(xiàng)目打開后亂碼 走贪。
索性就寫了個(gè)轉(zhuǎn)換工具猛遍。
工具下載地址
github開源地址
轉(zhuǎn)換代碼
private void gbk2utf8file(string src, string des)
{
//var buffer = File.ReadAllBytes(src);
string strGbk = File.ReadAllText(src, Encoding.Default);
byte[] buffer = Encoding.GetEncoding("GBK").GetBytes(strGbk);
byte[] buffer2 = Encoding.Convert(Encoding.Default, Encoding.UTF8, buffer);
File.WriteAllBytes(des, buffer2);
}
遍歷獲取文件夾:
private void gbk2utfFolder(string src, string des)
{
//獲取文件夾中所有的文件
DirectoryInfo srcFolder = new DirectoryInfo(src);
FileInfo[] files = srcFolder.GetFiles();
//轉(zhuǎn)換
foreach (FileInfo item in files)
{
string fileDes = des + item.Name;
gbk2utf8file(item.FullName, fileDes);
}
DirectoryInfo[] dirs = srcFolder.GetDirectories();
foreach (DirectoryInfo item in dirs)
{
string folderdes = des + item.Name + "http://";
if (!Directory.Exists(folderdes))
{
Directory.CreateDirectory(folderdes);
}
gbk2utfFolder(item.FullName, folderdes);
}
}