C# UTF-8与GB2312编码的相互转化

  • Post author:
  • Post category:其他


1、首先引入命名空间:using System.Text;

2、 GB2312转化为UTF-8:

string LanChange(string str)
    {
        Encoding utf8;
        Encoding gb2312;
        utf8 = Encoding.GetEncoding("UTF-8");
        gb2312 = Encoding.GetEncoding("GB2312");
        byte[] gb = gb2312.GetBytes(str);
        gb = Encoding.Convert(gb2312,utf8,gb);
        return utf8.GetString(gb);
    }

3、UTF-8转化为GB2312

string ChangeLan(string text)
    {
        byte[] bs = Encoding.GetEncoding("UTF-8").GetBytes(text);
        bs = Encoding.Convert(Encoding.GetEncoding("UTF-8"), Encoding.GetEncoding("GB2312"), bs);
        return Encoding.GetEncoding("GB2312").GetString(bs);
    }

以上的两种转换方式,写法格式上略有不同,但实质是一样的。

如需要转换其它的格式,则对应换一下像样的编码格式即可。

转自

[https://blog.csdn.net/u014076894/article/details/40382567]