做一个从windows cmd截获命令返回值的java程序,结果截回来的文字中所有的中文都是乱码
Microsoft Windows [�汾 6.1.7260]
��Ȩ���� (c) 2009 Microsoft Corporation����������Ȩ��
看了一下,问题出在BufferedReader上,原来的代码是:
BufferedReader buffer = new BufferedReader(in);
这样会出现编码的问题。我在bufferedReder后面加上了转换成utf-8的方法:
BufferedReader buffer = new BufferedReader(
new InputStreamReader(in,"utf-8"));
发现还是乱码,试了其他一些编码,最终GBK和GB2312可以成功显示中文。
BufferedReader buffer = new BufferedReader(
new InputStreamReader(in,"GB2312"));
Microsoft Windows [版本 6.1.7260]
版权所有 (c) 2009 Microsoft Corporation。保留所有权利。
本文介绍了一个从Windows CMD截获命令返回值的Java程序遇到的中文乱码问题及解决方案。通过修改BufferedReader的编码方式为GBK或GB2312,成功解决了中文字符的乱码问题。

7638

被折叠的 条评论
为什么被折叠?



