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

  然后在文件阅读后输出时则不会出现乱码问题。

  

posted @ 2022-08-08 17:08  我命倾尘  阅读(4390)  评论(0编辑  收藏  举报