C#控制台输出中文显示乱码问题
2021/9/13 9:05:05
本文主要是介绍C#控制台输出中文显示乱码问题,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
问题:瑞典文字的“æ”在控制台中无法正确的显示?
String[] strings1 = { "case", "encyclopædia", "encyclopædia", "Archæology" };
程序运行后 显示效果如下:
我们通过在控制台的标题栏点击右键》属性,查看当前控制台显示所用的编码格式是:当前代码页936(ANSI/OEM-中文简体 GBK),它对应的是操作系统中,区域》语言管理设置》当前区域 如下图所示:
当前代码页936(ANSI/OEM-中文简体 GBK)是什么意思呢?
代码页:code page 简体中文的code page值为936,繁体中文的code page值为950(表示Big-5编码)
ANSI:实ANSI并不是某一种特定的字符编码,而是在不同的系统中,ANSI表示不同的编码。你的美国同事Bob的系统中ANSI编码其实是ASCII编码(ASCII编码不能表示汉字,所以汉字为乱码),而你的系统中(“汉字”正常显示)ANSI编码其实是GBK编码
详细:https://zhuanlan.zhihu.com/p/27136737
通过以上分析我们得出 :控制台显示编码格式是GBK 无法显示瑞典文字。所以我们要修改控制台的显示编码格式(InputEncoding)。
解决方案
在要输出中文的语句上加上这一行即可解决乱码问题
Console.OutputEncoding = System.Text.Encoding.Unicode; Console.WriteLine("打印中文");
这篇关于C#控制台输出中文显示乱码问题的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2022-03-01沐雪多租宝商城源码从.NetCore3.1升级到.Net6的步骤
- 2024-12-06使用Microsoft.Extensions.AI在.NET中生成嵌入向量
- 2024-11-18微软研究:RAG系统的四个层次提升理解与回答能力
- 2024-11-15C#中怎么从PEM格式的证书中提取公钥?-icode9专业技术文章分享
- 2024-11-14云架构设计——如何用diagrams.net绘制专业的AWS架构图?
- 2024-05-08首个适配Visual Studio平台的国产智能编程助手CodeGeeX正式上线!C#程序员必备效率神器!
- 2024-03-30C#设计模式之十六迭代器模式(Iterator Pattern)【行为型】
- 2024-03-29c# datetime tryparse
- 2024-02-21list find index c#
- 2024-01-24convert toint32 c#