感谢解答,自己搞定了 O(∩_∩)O哈哈~
#region 注册GB2312
EncodingProvider provider = CodePagesEncodingProvider.Instance;
Encoding.RegisterProvider(provider);
Encoding gb2312 = Encoding.GetEncoding("gb2312");
#endregion
var content = File.ReadAllText(path, gb2312);
byte[] tempG = gb2312.GetBytes(content);
byte[] utf8 = Encoding.Convert(gb2312, Encoding.UTF8, tempG);
string utf8str = Encoding.UTF8.GetString(utf8);
各种花样测试,都不行,最后这样就没问题了,还是不方便感觉,要是其他语言的系统铁定不能用,还要自己判读系统的语言在调用不同的转码方法