.net core中使用GB2312編碼的問題

Encoding.GetEncoding(「GBK」)的時候拋出了異常:html

'GBK' is not a supported encoding name. For information on defining a custom encoding, see the documentation for the Encoding.RegisterProvider method.
Parameter name: namejson

當改用GB2312的時候也拋出了一樣的異常:瀏覽器

'GB2312' is not a supported encoding name. For information on defining a custom encoding, see the documentation for the Encoding.RegisterProvider method.
Parameter name: name服務器

從異常上來看是不支持GB2312和GBK。並且提到了須要註冊EncodingProvider的方法。框架

CodePagesEncodingProvider定義在NuGet包「System.Text.Encoding.CodePages」之中。ide

因此咱們就須要添加System.Text.Encoding.CodePages的依賴。而後在Project.json中添加post

{
"dependencies": { "System.Text.Encoding.CodePages": "4.0.1-rc2-24027" }
}spa

在代碼中還須要添加Encoding.RegisterProvider(CodePagesEncodingProvider.Instance);code

            Encoding.RegisterProvider(CodePagesEncodingProvider.Instance);
            Encoding encoding = System.Text.Encoding.GetEncoding("GB2312");
            byte[] data = encoding.GetBytes(postData);

 

更多:orm

.Net Core EF 使用整理合集

2012服務器在IIS部署的SLL(https)網址谷歌瀏覽器沒法訪問的問題解決

Asp.Net Core 框架源碼地址

相關文章
相關標籤/搜索