在vscode(在cmd.exe也会)中有时候编译输出含有中文的内容时,在输出界面显示的是乱码.

原因:我们需要传递给计算机的所有信息都会转换成0 1表示的二进制数字流,经过CPU处理后再输出给相应的程序,程序再把这些二进制数字流翻译成方便人读懂的各种语言,因此输入和输出两个方向存在步骤:编码和译码,对字符处理的编码规则成为字符集,常见的有ASCII,UTF8等,不同的字符集下,一个字符对应的二进制数字不同,因此如果在A程序中用1编码规则输入字符,经CPU处理后在B程序中用2编码规则输出,由于1编码规则和2编码规则不同,在输出程序中就会显示乱码而不是你在输入程序中输入的内容,只有输入和输出程序采用相同的编码才会得到相同的输出。

解决:首先确定自己在编辑某个文件时输入的中文是采用哪种编码,在vscode中可以在右下角状态栏查看,如下图为GBK编码,vscode默认为UTF8,

vscode可以在设置里查看和配置(搜索栏输入encoding快速查找到该配置项),如下图:

上述只是输入采用的字符集编码,对输出而言,在Windows下,可以通过右键查看cmd.exe的属性查看其显示的编码字符集,如下图:

只有当输入和输出的编码字符集相同时,才不会输出乱码。

另外在vscode的输出面板,默认采用的是UTF8的字符编码,目前还不知道怎么设置输出面板的字符编码。而终端面板和cmd.exe的字符编码一样,默认都是用GBK字符编码,所以如果你采用的是GBK编码输入,调试时如果配置在终端输出结果,不会出现乱码,而如果配置在输出面板输出运行结果,则会出现乱码,runcode插件默认在输出面板输出程序运行结果,这种情况下解决方法要么配置runcode插件的输出结果在终端输出,方法见下图,要么修改cmd.exe的字符编码为UTF8,方法请网上查询。

注1:vscode的terminal使用和cmd一样的编码字符集;

注2:vscode下修改了配置后使用run code运行程序还是乱码,可能是你在编辑该文件时使用的是另一种字符集,需要重新用配置好的字符集编码重新输入你的中文内容。

 

VsCode中文输出为乱码的原因及解决方法相关推荐

  1. android u盘盘符乱码,分享U盘中文件出现乱码的原因以及解决方法

    当使用U盘时发现U盘文件成了乱码,就算将U盘拔插了几次也无法恢复,这是怎么回事呢?U盘文件出现乱码又应该如何解决呢?接下来就为大家分享U盘中文件出现乱码的原因以及解决方法. u盘出现乱码的原因: 1. ...

  2. mysql表中的中文是乱码_mysql插入表中的中文显示为乱码或问号的解决方法

    版权声明:本文为博主原创文章,未经博主允许不得转载. 今天在做ssh的博客项目时发现mysql数据库中的中文显示为问号,网上查阅了很多资料,都不是很全,所以我总结一下,供大家参考和自己复习. 1.我的 ...

  3. java中文乱码的原因及解决方法

    在java开发中都能遇到java中文乱码的情况,怎样才能够恰当地选择汉字编码方式并正确地处理汉字的编码呢?希望通过下面的总结的java中文乱码解决方法对遇到过此类问题的朋友有所帮助. 首先,要想解决j ...

  4. 中文乱码的原因及解决方法

    1.我们常用的编码表: ASCLL:美国标准信息交换码 --->用一个字节的7位可以表示 ISO8859-1:拉丁码表.欧洲码表 --->用一个字节的8位来表示 GB2312:中国的中文编 ...

  5. java中乱码产生的原因_java出现乱码的原因与解决方法详解

    java在字符串中统一用Unicode表示.(推荐:java视频教程) 对于任意一个字符串:String string = "测试字符串"; 如果源文件是GBK编码,操作系统默认环 ...

  6. 电脑出现乱码的原因以及解决方法

    在日常使用电脑的过程中,经常会遇到电脑出现乱码,那么为什么会出现乱码呢?出现乱码又该怎么解决呢?下面我们一起来了解一下. 出现乱码的原因 系统乱码:主要是Windows中显示乱码,比如菜单.桌面.启动 ...

  7. PHP连接MYSQL出现乱码的原因与解决方法

    解决MySql数据库乱码的一个首要前提是保证 数据库+数据表+前端显示 编码一致,国内项目一般统一设定为GB2312或GBK,而国际化项目则一般使用utf8. 另外,字符集设定完毕之后记得重启目标机M ...

  8. php 日文中文乱码,phpgd库中文乱码的产生与解决方法详解 || mao的博客

    在php jpgraph安装教程之验证php环境是否支持jpgraph安装方法的php教程中我提到了gd库的验证,对于jpgraph中文使用者来说使用 jpgraph时不产生中文乱码是非常必要的,而g ...

  9. php连接mysql乱码原因_PHP连接MYSQL出现乱码的原因与解决办法

    PHP连接mysql出现乱码的原因与解决方法 解决MySql数据库乱码的一个首要前提是保证 数据库+数据表+前端显示 编码一致,国内项目一般统一设定为GB2312或GBK,而国际化项目则一般使用utf ...

  10. Mac OS X 下文件名乱码出现的原因和解决方法

    在Mac电脑的使用过程中,偶尔会出现各种各样的问题,有些用户会遇到下载文件是乱码的问题,为什么会出现乱码?如何解决.下面我们分享出现乱码的原因及解决方法. 乱码原因: 缺少服务造成的 乱码: FCPX ...

最新文章

  1. 华为云力推“普惠AI”,EI智能体正在落地行业
  2. Android模块化面向接口编程,讲的明明白白!
  3. 如何在visio2010的框图中插入公式?
  4. HTTP标准相关的基础概念
  5. elasticsearch和php,快速开始 | Elasticsearch-PHP | Elastic
  6. jquery eaayui 学习(四)datagrid
  7. Hadoop 技术在电信运营商上网日志处理中的应用架构
  8. 常用命令之svn命令
  9. Ignite学习笔记——Ignite的安装与配置
  10. 12款华丽的Admin管理后台模板
  11. 我的第一个WFF项目
  12. java 向量存储_关于java:使用AES-256和初始化向量进行加密
  13. XiaomiRouter自学之路(13-U-boot支持web更新firmware功能)
  14. MATLAB学习【第五部分】--第一节:矩阵的输入//冒号表达式矩阵---linspace函数生成向量---一般矩阵输入
  15. 好用的 APISpace 车牌识别API
  16. 手机录屏并转换成gif动图
  17. Win10更新、重装后 触摸板无法关闭
  18. GTD时间管理,如何收集?| 每天成就更大成功
  19. 关闭win8安全中心服务器,Win8系统启动安全中心服务的办法
  20. 自然语言处理笔记5-哈工大 关毅

热门文章

  1. Java实现的餐厅点餐系统源码Java点餐系统Java点餐系统Java网上订餐系统Java在线订餐系统
  2. php常用函数最全总结
  3. Linux 压缩文件 排除指定的目录和 指定的后缀,超实用
  4. PHPSTORM插件
  5. UG NX 12 草图
  6. 恩智浦智能车大赛----笔记
  7. Mysql密码忘记怎么办?重置密码完整教程
  8. 微信小程序密码显示隐藏(小眼睛)
  9. 以观察者设计模式举例的房产信息系统
  10. mysql如何源码安装_MySQL源码安装