Eclipse 控制台输入中文再读出来乱码的解决方案

引用:http://www.cnblogs.com/wenjiang/archive/2013/01/15/2861774.html

最近遇到一个问题,就是我的Eclipse无法正确显示中文,情况如下:

1.读取一个文件的中文输出到控制台,发现乱码;

2.通过System.out输出到控制台,没有问题,但是重新读取输出到控制台的中文,乱码;

3.通过控制台输入内容,然后将这些内容写入一个文件,打开,乱码。

     我以为是我的Eclipse的中文编码设置有问题,但是全都改过后,发现问题依然存在,系统也是支持中文,设置没有问题。既然这样,那么,就是程序有问题。于是我就写了这么一个简单的代码:

   BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
   System.out.println(reader.readLine());
   reader.close();

      检验我的控制台是否有问题,结果乱码。可能存在的问题只有两个地方:

1.System.in存在问题;

2.reader.readLine()有问题。

reader.readLine()暂时认为没有问题,因为BufferedReader是专门读取字符的,但是我这里有一个InputStreamReader是读取字节的,对于中文来说,是要占两个字节的,但是InputStreamReader一次只读取一个字节,如果中文的字节数是奇数,就有可能出现乱码。

   网上有很多方法,比如说,指定中文编码格式,我试过,不行。最后,终于找到一个方法,经测试可行,方法如下:

   (1)关闭Eclipse;

    (2)在Eclipse.exe同目录下,有一个eclipse.ini,打开,然后添加这么一句:

           -Dfile.encoding = utf-8

           保存;

    (3)重新打开Eclipse,问题就没有了。

        -Dfile.encoding = utf-8,就是字面上的意思,设置系统属性file.encoding为utf-8.

Eclipse中,解决控制台中文乱码问题有以下几种方式可供参考: 1. 改变文件类型的编码格式:打开Eclipse,点击菜单栏的"Window",选择"Preferences",找到"General",点击"Content Types"。在下面找到要修改的文件类型(比如JAVA、JSP等),在"Default encoding"输入框中输入GBK或UTF-8,点击"Update",然后点击"OK",最后重启Eclipse。 2. 改变整个Eclipse工作空间的编码格式:打开Eclipse,点击菜单栏的"Window",选择"Preferences",找到"General",点击"Workspace"。将文本文件编码格式改为GBK,然后点击"OK"。 3. 改变单个文件的编码格式:在包资源管理器中右键点击文件,选择"Properties",将文本文件编码格式改为GBK。 4. 使用Editplus转码:用Editplus打开要转码的文件,如果没有乱码,将文件内容拷贝到Eclipse中;如果有乱码,先在Editplus中转码,然后再用Eclipse打开。 5. 修改Eclipse的默认编码格式:右键点击工程,选择"Properties",在"Info"中的"Text file encoding"中将"Other"改为UTF-8。 6. 修改eclipse.ini文件:打开eclipse.ini文件(在Eclipse的安装目录),添加一行代码"-Dfile.encoding=utf-8",保存后重新启动Eclipse。 这些方法都可以用来解决Eclipse控制台中文乱码的问题,你可以根据具体情况选择其中的一种方法来尝试解决。<span class="em">1</span><span class="em">2</span><span class="em">3</span><span class="em">4</span>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值