解决在VS Code中运行有中文字符的Java代码(第三种方式),出现编码 GBK 的不可映射字符 (0x81)
写代码时,我们不避免的会使用一些中文注释,这些在其他的语言中没有问题。但是在Java的注释里面如果有中文字符,就会报错。即使文件编码是utf-8也无济于事。是因为使用CMD运行java程序的时候,系统默认的编码格式是gbk。而包含中文字符的代码一般是Unicode格式,所以直接运行含有中文字符的代码就很容易出现编码错误。
比如下面的
public class test {
public static void main(String[] args) {
System.out.println("你好!");
}
}
在VS Code中直接使用Run Code插件运行,会出现如下的场景

解决办法
方法一:使用-encoding utf-8 指令指定运行编码为UTF-8
javac -encoding UTF-8 .\test.java && java test
方法二:用记事本打开,修改文件的编码

保存后在cmd中可以运行即可,参考命令
javac .\test.java && java test
方法三,VS Code的推荐使用,保存编码为GBK2312
在右下角修改默认的utf-8文件编码为gbk2312编码

选择编码保存

输入2312,选择下面的第一个

然后在VS Code中就可以直接Run Code代码了;如果是用命令运行的方式,命令同方法二

本文来自博客园,作者:喝茶看猴戏,转载请注明原文链接:https://www.cnblogs.com/zdwzdwzdw/p/17487937.html

浙公网安备 33010602011771号