最新要闻

广告

手机

iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?

iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?

警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案

警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案

家电

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

来源:博客园

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


(资料图片仅供参考)

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

方法一【管用】

Java项目时,像Springboot微服务项目默认使用的是logback日志,编码黑夜是UTF-8个性成gbk

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

${console_log_pattern}gbk debug

方法二

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

关键词: