首页 > 代码库 > .net core的控制台乱码问题总结
.net core的控制台乱码问题总结
1. Project.json 添加程序集System.Text.Encoding.CodePages的 引用
"dependencies": { ... "System.ComponentModel.TypeConverter": "4.1.0"}
2. 第一行增加
Encoding.RegisterProvider(CodePagesEncodingProvider.Instance);
完整如下:
1 public class Program2 {3 public static void Main(string[] args)4 { 5 Encoding.RegisterProvider(CodePagesEncodingProvider.Instance); // 尝试将这一行放入下面6,7两行之间试试6 Console.WriteLine("中文怎么能是乱码呢?");7 Console.WriteLine("中文怎么能是乱码呢?");8 }9 }
3. 最后是关于.net core 不支持System.Text.Encoding.Default的问题
可使用System.Text.Encoding.GetEncoding(0)替代
注 Windows中的 System.Text.Encoding.Default 所采用的字符集取决于注册表 hkey_current_user/console/codepage的配置
注:为什么.net core 中不在支持System.Text.Encoding.Default? System.Text.Encoding.Default的实现依赖win32 Api
.net core的控制台乱码问题总结
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。