首先,要知道.Net Core和.Net Framework兩個環境下很多東西是不同的,接下來要說的這個就是其中一個,
Encoding.Default,在 .NET Framework 中,Default屬性始侄訓取系統的活動代碼頁,并創建對應于它的 Encoding物件,
而在 .NET Core 中,Default屬性始侄訓傳UTF8Encoding,
官方檔案:https://docs.microsoft.com/zh-cn/dotnet/api/system.text.encoding.default?view=netcore-3.1#System_Text_Encoding_Default
所以關于讀取檔案亂碼的問題,百度上有很多方案,都是在.NET Framework中有效,而在 .NET Core 中沒有任何效果甚至報錯,
.NET Framework 中默認編碼是GB2312,而在 .NET Core 中不支持,若想使用必須得先注冊編碼法
下面直接貼出代碼
//注冊編碼
Encoding.RegisterProvider(CodePagesEncodingProvider.Instance);
//讀取檔案資料
StreamReader SRFile = new StreamReader("讀取檔案路徑", Encoding.GetEncoding("GB2312"));
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/1636.html
標籤:.NET Core
