System.in乱码以及控制台其他乱码真正解决办法

Java编码乱码问题解决
本文介绍了在Java开发过程中遇到的编码乱码问题及其解决方案,包括如何调整源文件编码、properties配置文件的编辑技巧以及ANT编译环境中的编码设置。
System.in乱码解决

原来是java源文件编码本身为UTF-8出现的,所以控制台打印出来就是乱码
而程序本身应该没有什么问题的(这里说的没问题,比如说输出到一个文件中中文正常)。

java源文件 在Eclipse IDE 右键 属性->修改编码为GBK
或者用记事本打开另存为ANSI编码

[color=red]类似的非程序级别的问题经常在使用网页时也会出现。[/color]


补充:
尤其在读写properties配置文件时要注意,尽管设置了所有编码一致为UTF-8或者GBK,仍然乱码
问题在这里,需要用MyEclipse自带的编辑器以表格界面编辑即可,而非文本形式,格式一般肉眼不可见,故造成仍然为乱码。config.properties编码问题,在IDE工具中容易出现此问题,最好使用带有表格形式的MyEclipse在表格模式下编写中文文字,或者使用springsource ide的属性文件专用插件propertyeditor

最近(2012.10)发现新型乱码的解决:
1. 控制台打印出一个“诺”字,这个在我的机器上可以重现,先由记事本打开ANSI编码的内容,另存为UTF-8格式后,在IDE工具中都不出现错误,但是在ANT编译或运行时环境,却报首行代码第一个字出现了“诺”字,解决方法就是先用ECLIPSE IDE工具把文件内容全选复制->把文件编码(照上面提到的方式)改成GBK或gb2312,“诺”字出现,然后删除所有内容保存文件,关闭文件,再把编码改回UTF-8,然后再粘贴内容即可。

所以,尽量少用记事本做,用就用专用的编辑工具

2. ANT中编译环境报警说有编码问题,在build.xml中标记为javac 的 增加 encoding="utf-8"即可。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值