C#開發:讀寫文件時中文字符亂碼問題

一、問題處理

  1.引入依賴System.Text.Encoding.CodePages

  在終端運行命令:

dotnet add package System.Text.Encoding.CodePages --version 4.4.0

dotnet restore

  引入之後發現.csproj配置文件中出現該依賴:

  

  2.在代碼中使用該依賴:

using System;
using System.Collections;
using System.IO;
using System.Text;
namespace MainSpace{
    class Program{

        //主入口
        static void Main(string[] args){
            System.Text.Encoding.RegisterProvider (System.Text.CodePagesEncodingProvider.Instance);
            StreamReader streamReader = new StreamReader("sample.txt",Encoding.GetEncoding("utf-8"));
            string? rl = "";
            while((rl = streamReader.ReadLine()) != null){
                Console.WriteLine(rl);
            }
        }
    }
}

  使用System.Text命名空間

  通過System.Text.Encoding.RegisterProvider (System.Text.CodePagesEncodingProvider.Instance);進行編碼格式的註冊(在使用相應編碼前註冊)

  定義流閱讀文件時,通過Encoding.GetEncoding("utf-8")設定編碼爲utf-8

  然後在文件閱讀後輸出時則不會出現亂碼問題。

  

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章