难道.NET Core到R2连中文编码都不支持吗?

  • 时间:
  • 浏览:1
  • 来源:大发大发彩神app—大发彩神下载苹果

守护系统进程执行结果证明,上述某种生活中文编码均不支持。

微博:

作者:蒋金楠

本文版权归作者和博客园共有,欢迎转载,但未经作者同意时要保留此段声明,且在文章页面明显位置给出原文连接,你会保留追究法律责任的权利。

为了进一步证明.NET Core对编码的局限,让.我按照如下的法子调用Encoding的GetEncoding法子分别获取某种生活中文编码:GB2312和CP936。

让.我提供的某种生活中文编码在默认情形下时要 支持,是可能性默然情形下它们的EncodingProvider这么注册。上端显示的错误消息确实也提到了某种 点,你会提到原本用于注册EncodingProvider的法子(Encoding.RegisterProvider)。于是让.我按照下面的法子注册原本CodePagesEncodingProvider。

CodePagesEncodingProvider定义在NuGet包“System.Text.Encoding.CodePages”之中,全都让.我时要现在Project.json文件中按照如下的法子注册对应的依赖。

微信公众账号:大内老A

再次执行让.我的守护系统进程后一切正常。

现在给让.我重现某种 问题报告 ,通过VS 2015创建原本.NET Core控制台守护系统进程。

可能性停用)。

让.我在Main法子中只编写了如下几行行守护系统进程,将输入的字符串直接打印出来。

可能性你想及时得到被委托人撰写文章以及著作的消息推送,可能性看过看被委托人推荐的技术资料,都时要扫描左边二维码(可能性长按识别二维码)关注被委托人公众号(原本公众帐号

今天写了原本简单的.NET Core RC2控制台守护系统进程,发现中文显示经常是乱码。查看操作系统设置,这么问题报告 ;查看源文件编码,也这么问题报告 ;甚至查看过Console字符编码相关的注册表,依然这么发现问题报告 。难道NET Core到了RC2,莫非连你会 常用的编码时要 支持吗?

某种 小问题报告 确实体现了.NET Core最大的原本设计原则,那全都真正的模块化。对于.NET Framework来说,基础类型和API基本上通过几个核心的守护系统进程集来承载(比如mscorlib.dll,System.dll、System.Core.dll等),也全都在部署的你会,哪此个守护系统进程集时要 必需的——可能性让.我只使用到其中很少的API。原本的设计对于桌面应用,这么哪此问题报告 ,现在.NET Core要实现真正的跨平台,你会创建适合多种设备的统一应用(UWP),原本的部署法子时要 问题报告 了。所有.NET Core将全都“不这么核心”的API分离出来定义在你会 的守护系统进程集中,并通过相应的NuGet包来承载。这么让.我的应用就都时要“按需使用”哪此NuGet包了。这是某种生活“pay-for-play”设计。

运行守护系统进程并分别输入中文和英文,让.我会发现输入的中文显示为乱码。