Vscode控制台乱码的最终解决方案

vscode运行项目时控制台打印日志乱码。网上也有许多解决办法。

方法一【管用】推荐,避免过多设置

Java项目时,像Springboot微服务项目默认使用的是logback日志组件,编码默认是UTF-8

因为vscode调用的是windows的cmd,所以要设置成gbk编码,修改logback.xml或logback-spring.xml

同理其他语言的项目检查下项目中用的日志组件,调整相应编码即可。

	<!-- 控制台输出 -->
<appender name="console" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<Pattern>${console_log_pattern}</Pattern>
<charset>gbk</charset> <!-- 此处设置字符集 如果windows控制下乱码请更改为GBK-->
</encoder>
<!--此日志appender是为开发使用,只配置最底级别,控制台输出的日志级别是大于或等于此级别的日志信息 -->
<filter class="ch.qos.logback.classic.filter.ThresholdFilter">
<level>debug</level>
</filter>
</appender>

方法二

VSCode终端其实调用的是cmd.exe,所以当这里出现中文乱码的时候要解决的是cmd的编码设置问题。

  1. 可以通过 chcp 命令查看 cmd 的编码设置,GBK2312 的代码页编号是 936,然后改成utf-8的编码即可;
  2. utf-8 对应的代码页编号是 65001 ,所以执行 chcp 65001 就可以把cmd的编码设置成uft-8了;
  3. 这样就解决了乱码问题,然后可以再次运行代码查看输出 ;

方法三

在node.js的调试过称中,经常需要在终端中使用console.log()输入一些变量,然而windows的cmd默认是GBK编码,在调试的过程中会出现乱码。

幸好VScode提供的对内置控制台的运行参数设定,我们可以通过 terminal.integrated.shellArgs.windows选项对内置控制台的运行进行参数设定。

通过打开“文件”--“首选项”--“用户设置”,然后在setting.json中设置:

{
"editor.fontSize": 18,
"terminal.integrated.shellArgs.windows": ["/K chcp 65001 >nul"],
"terminal.integrated.fontFamily": "Lucida Console",
}

/K chcp 65001 >nul的含义是在运行cmd的时候将编码设置为 65001;

>nul是避免在控制台输出修改编码的信息,否则会输出 active code page: 65001

同时,把字体修改为 Lucida Console

Vscode控制台乱码的最终解决方案的更多相关文章

  1. tasks.json 配置 解决vscode控制台乱码问题

    { "version": "2.0.0", "command": "dotnet", "tasks" ...

  2. 真正的解决IDEA中Tomcat控制台乱码的问题

    真正的解决IDEA中Tomcat控制台乱码的问题 解决方案一 网上看到一个真正的解决方案: 首先要分清是tomcat日志编码,与idea的日志显示控制台编码 tomcat日志编码:当在cmd中启动To ...

  3. vscode控制台中文乱码

    原因 vscode中文控制台乱码原因是调用的cmd的显示. 所以问题实际上是cmd的显示中文乱码问题.当然还有其他方法仅仅修改vscode的显示,这里不在说明. cmd中国版本windows默认是93 ...

  4. IDEA使用Tomcat时控制台乱码的解决方案>从零开始学JAVA系列

    IDEA使用Tomcat时控制台乱码的解决方案 解决方案1,修改启动时虚拟机参数 解决方案2,修改idea的设置 解决方案3,修改idea配置文件 在最后添加一行 '-Dfile.encoding=U ...

  5. vim、gvim 在 windows 下中文乱码的终极解决方案

    vim.gvim 在 windows 下中文乱码的终极解决方案 vim ~/.vimrc 然后加入: " Gvim中文菜单乱码解决方案 " 设置文件编码格式 set encodin ...

  6. 记一次idea启动tomcat后控制台乱码的坑

    IDEA的编码配置大致跟<IntelliJ IDEA 控制台中文乱码解决方案>一样 但是启动后依旧乱码!why? 后来想起来,之前因为在win10控制台下跑tomcat乱码,所以,改过一个 ...

  7. Intellij IDEA14 搜索框及控制台乱码解决

    搜索ctrl+F及ctrl+H的搜索框.调试的时候控制台.导入module都显示为为中文乱码 如下: 解决方案: File->Setting->IDE Settings->Appea ...

  8. 关于Mysql中文乱码问题该如何解决(乱码问题完美解决方案)(转)

    这篇文章给大家介绍关于Mysql中文乱码问题该如何解决(乱码问题完美解决方案)的相关资料,还给大家收集些关于MySQL会出现中文乱码原因常见的几点,小伙伴快来看看吧   最近两天做项目总是被乱码问题困 ...

  9. VScode中文乱码的问题

    在vscode中打开文件,文件中的中文乱码了.解决方案: 1.vscode右下角,点击utf-8 (选择编码) 2.出现下面选择框,点击第一个 3.输入gb2312,如图选择 4.此刻解决乱码问题了. ...

  10. 关于CSV文件 Excel打开乱码问题的解决方案

    近日写java程序中,将数据输出到csv文件中,发现Excel打开之后,中文均为乱码 于是寻找解决方案,发现最简单的方式还是如此了 1. 将输出的csv文件用记事本打开 2. 另存为将文件编码格式改为 ...

随机推荐

  1. ES 2024 新特性

    ECMAScript 2024 新特性 ECMAScript 2024, the 15th edition, added facilities for resizing and transferrin ...

  2. kubernetes运行应用Controller3之Job、CronJob详解

    成功启动一个Job 1.Job.spec.template.metadata,没有空格符的错误 [machangwei@mcwk8s-master ~]$ cat mcwJob1.yml apiVer ...

  3. RuoYi(若依)前后端分离版本,windows下部署(nginx)

    摘自:https://blog.csdn.net/yueyekkx/article/details/105505490 上一篇用了tomcat部署(https://blog.csdn.net/yuey ...

  4. ClickHouse 初步认识

    概述 Clickhouse 是分析型数据库,真正的面向列式存储,支持高维度表.它免费开源.具备高效的数据导入和查询性能,能达到 50M/200M 每秒.支持实时查询.支持不同功能底层存储引擎,例如:M ...

  5. JavaScript 中 toString 的奇妙使用

    JavaScript 中的toString()方法,我们通常会一些其他类型的变量,转为字符串类型.但这里还有一些其他奇妙的用法. 不同的类型调用 toString() 会得到不同的结果.我们来一一分析 ...

  6. HTML——img标签

    在HTML中,图像由标签定义的,它可以用来加载图片到html网页中显示.网页开发过程中,有三种图片格式被广泛应用到web里,分别是 jpg.png.gif. img标签的属性: /* src属性: 指 ...

  7. HTML——标签元素的两大类

    块级标签(block) – 独占一行 内联标签(inline) – 按文本内容占位 div标签和span标签 <div>只是一个块级元素,并无实际的意义.主要通过CSS样式为其赋予不同的表 ...

  8. WPF开发快速入门【1】WPF的布局

    概述 本文描述几款WPF中常用的布局控件. Grid Grid是WPF最常用的布局控件. 它把面板分割为固定长和宽的网格,子控件就放置在网格内. <Grid> <Grid.Colum ...

  9. 在kubernetes里使用AppArmor限制容器对资源的访问

    目录 一.系统环境 二.前言 三.AppArmor简介 四.AppArmor和SELinux的区别 五.使用AppArmor限制nginx程序访问目录 5.1 安装nginx 5.2 修改nginx的 ...

  10. js数组操作——对象数组根据某个相同的字段分组

    先说点废话 最近在实际业务中,需要编写一个方法根据数组中每一个对象的一个相同字段,来将该字段值相等的对象重新编入一个数组,返回一个嵌套的数组对象,特地来做个总结. 当然需要注意的是,在开发过程这种数组 ...