由于工作的需要,把代码从一台电脑复制到另一台,而新的电脑的缺省代码页和代码开发时使用的电脑的缺省代码页不同,而且开发时文件保存的代码页不是UTF-8是缺省代码页,
在新电脑中的VS中打开项目,发现所有的代码文件都变成了乱码。(旧电脑 中文 ,新电脑 日文)
制作了一个小工具来批量转换cs文件的代码页。
流程如下
1,指定要转换的目录
2,遍历指定目录下的cs文件,找到不是UTF-8的文件
3,打开原始文件,重新保存为UTF-8代码页的文件,保存路径是原始路径_after
关键步骤是第2步,即检查文件的代码页。网上找到的大部分代码都是判断是否UTF-8,但是不能准确判断出其他代码页。
lzyox提供了一个思路,利用Mozilla的Mozilla.NUniversalCharDet可以较好地判断代码页。
参考
小鸟快飞的博客
https://blog.csdn.net/wr6521941/article/details/71403220
lzyox的ChinaUnix博客
http://blog.chinaunix.net/uid-21323988-id-1827961.html
源代码已经上传
https://download.csdn.net/download/lujianjian/11072054