zoukankan      html  css  js  c++  java
  • NetCore 开发时中文编码转换出现异常

    在C#编程的时候难免会遇到需要转换编码的场合.
    在Framwork中可以用System.Text.Encoding解决,但是到了core会发现,虽然也有这个东西,但几个关键的中文编码(比如GB2312)找不着.
    即便你在中文Windows系统或者中文linux系统.

    测试代码:

    static void Main(string[] args)
    {
        var gb2312=Encoding.GetEncoding("GB2312");
        gb2312=gb2312;//此处打断点
        Console.WriteLine("Hello World!");
    }
    

    解决方法:

    安装这个nuget包: System.Text.Encoding.CodePages

    dotnet add package System.Text.Encoding.CodePages
    

    这个包提供了中文代码页,安装这个以后,在代码最开头注册一下(整个程序运行期间只需要注册一次,全局生效):

    static void Main(string[] args)
    {
        System.Text.Encoding.RegisterProvider(System.Text.CodePagesEncodingProvider.Instance);
        var gb2312=Encoding.GetEncoding("GB2312");
        gb2312=gb2312;//此处打断点
        Console.WriteLine("Hello World!");
    }
    

    结果:

  • 相关阅读:
    三范式
    解决Linux下乱码
    ER概念模型
    20140607
    PHP Fatal error: Class 'Yaf_Application' not found
    PHP流式读取XML文件
    php反射的使用
    wget 和curl 进行post数据
    crontab
    Leetcode OJ: Gray Code
  • 原文地址:https://www.cnblogs.com/DragonStart/p/11961217.html
Copyright © 2011-2022 走看看