为什么用system.out.println 在控制台输出的中文都是乱码

如题所述

这是编码问题,在eclipse的window里的preferences里的General下的workspace下改一下编码格式,改为utf-8就行了
温馨提示:内容为网友见解,仅供参考
第1个回答  2016-10-15
程序中变量需要中文赋值, 然后把该变量内容写到文本
但是在控制台输出看到的输出是乱码,把该变量的内容写到文本文件中也是乱码。

该程序在我本机环境(英文windows)上运行是没问题的,但是打包后放到中文windows
系统的环境中就会出现乱码。

该程序是个纯java应用程序,用System.getProperty("file.encoding")
输出的都是GBK,为什么还是不能显示中文,在启动的时候加上-Ddefault.client.encoding=GBK -Dfile.encoding=GBK 还是不能输出中文

public static void main(String[] args) {
String str ="测试";
System.out.println(str);

String encoding=System.getProperty("file.encoding");
System.out.println("Default System Encoding: " + encoding);本回答被提问者采纳

idea 输出 System.out.println() 控制台乱码
换了新的工作,JDK 从 1.8换成了 JDK 11 版本,发现在控制台通过system.out.println输出中文时 乱码 ,找了比较多的方法总总算解决了。下面分享一下 做完这三步,基本上就能解决输出乱码的问题,我也是做完这三步后,才解决的乱码问题。。。

Eclipse控制台乱码怎么解决
写了一个xml的处理类,结果发现直接通过主函数调用,System.out.println("中文")的时候有乱码。打开run\/debug属性,设置console编码为GBK,发现中文显示正常,我所有的设置都是UTF-8编码的,为什么需要设置成GBK呢?结果通过Tomcat6.0访问了一下这个类,发现正常啊,控制台打印出来的是中文,没有乱码啊。

java System.out.println('\'); 输出的为什么不是空 ,而是一个类...
口就是代表空格,如果你只是凑长度,敲空格键不就可以了啊 你这个是unicode编码,'\'代表的是nul,不是空格,空格的unicode编码是'\ '

...解码后用System.out.println() 输出为什么成乱码,求高手帮忙。_百度...
CLOB跟客户端NLS_LANG的字符集设置有关系,要保证和DB服务器的设置兼容;BLOB无此影响。

java 中文乱码问题 utf-8和gbk的区别
System.out.println(new String("中国".getBytes("utf-8"), "gbk"));\/\/将“中国“的gbk编码格式按着utf-8解析,或者反过来都会出现乱码。如浏览器当前为gbk编码,就以gbk编码格式来提交。 这本身是不会出现乱码的,问题就出在Web服务器接收数据的时候,HttpServletRequest在将客户端传来的数据转成...

java控制台输出乱码
产生原因:因为这个开源项目的默认字符编码不对,所以控制台的字符编码也自动变成了UTF-8,而键盘的输入流的默认格式是GBK格式,这样就造成了在GBK转UTF-8的过程中产生的奇数乱码错误(这个问题的解释可以在搜索引擎找到)。解决办法:1.在代码区域右键 -> run as -> run configurations -> common(右侧...

java运行System.out.println(“大家好”);双引号里是中文,就会报!不是...
可以使用如下方法解决:1、点击菜单栏的“格式”。2、选择“编码字符集”-->“中文”-->“GB2312”。然后保存文件再次编译运行就正常了。

java字节数组转换中文乱码,请求帮助
String str = new String(test,"UTF-16");System.out.println(str);打印结果:???流量已使用1000.00MB,剩余0.00MB;(均不含半年包、定向流量包)。超出流量0.00MB,超出流量(不含港澳台)按照约定资费

System.out.println("a" + (char) 2); System.out.println("a" +...
你看ASCII码表里十进制2和6都是啥:这些字符于控制台而言都是不可见字符,所以你看到是类似乱码的东西。从十进制32开始基本上是可见字符了:以字符'A'为例,它的十进制数对应为65,运行结果:我们再看字符'2'和'6'分别对应十进制数50和54,因此你想显示字符'2'和'6'的话,应该修改为:...

java 字符串输出到控制台乱码问题
str = new String(bytes,"gbk");\/\/如果不行,那就utf-8试试。

相似回答