dotnet8中控制台应用中文乱码问题
也许是因为系统是非中文,也许是LSTC修改版的系统,在dotnet8下开发控制台应用,出现了中文乱码显示问号的问题。
经查阅,使用nuget包并设置中文编码,可解决。不知UTF-8编码是否也能正常显示中文,我没试。
- 在项目内引用nuget包。
<ItemGroup>
<PackageReference Include="System.Text.Encoding.CodePages" Version="8.0.0" />
</ItemGroup>
- 在程序启动时,设置编码。
Encoding.RegisterProvider(CodePagesEncodingProvider.Instance);
Console.InputEncoding = Encoding.GetEncoding("GB2312");
Console.OutputEncoding = Encoding.GetEncoding("GB2312");
// DoSomething();