解决linux控制台下中文乱码方法一览
---
装了Red Hat Linux,在Linux控制台下操作,有时会显示乱码,比如在一空目录下运行ls。
估计是中文形成的乱码,实际上只要显示英文就好了,不用显示什么中文啊。
为了解决这个问题,在网上搜了下,找到一些办法,都记录一下!
我目前采用的是第一种方法:unset all, LC_TYPE,Lang。临时解决一下就可以了。
+++
解决linux控制台下中文乱码方法
---
文章出处:http://viking.blog.51cto.com/272298/82423
---
配置了中文环境后,控制台却无法正常显示中文。百思不得其解,于是google了一下,算是在“玄门” 博客中找到个临时的解决方案:
在控制台中依次执行下列命令:
unset ALL
unset LC_TYPE
unset LANG
不过此方法只能临时解决,再次登陆后依然无法正常显示。
另找到的方法(慎用):
将目录 /etc/sysconfig 下的 i18n 文件内的所有内容删除,然后重启,就可以了。
注:此种方法设置后,应该不支持中文了。我用SSH登陆,所以就英文吧。哎~~~
+++
Linux控制台下中文显示乱码的解决/Linux中文控制台
---
http://85y.org/blog/20070812277.html
---
在Ubuntu下
得先安装zhcon
$ sudo apt-get install zhcon
安装完后,在控制台下输入:
$ zhcon --utf8
就可以显示中文了,而且还有中文输入文,按Ctrl+空格键就可以调出来了,不过只能用智能拼音输入法,暂时没有五笔输入法
有一个情况,就是输入
$ zhcon --utf8
之后,显示屏黑了,没有任何反应,这是因为你的显示器分辨率没有设置好,zhcon只支持800×600,1024×768的分辨率下使用,这得在/boot/grub/menu.lst里面加入一个参数
$ sudo vim /boot/grub/menu.lst
找到里面这样子的句子
title Ubuntu 6.10, kernel 2.6.17-10-generic
root (hd0,2)
kernel /boot/vmlinuz-2.6.17-10-generic root=/dev/hda3 vga=788
initrd /boot/initrd.img-2.6.17-10-generic
quiet
savedefault
boot
在kernel这一行,在后面加入vga=XXX,XXX我用的是788,对照表在下面,788也就是800X600的分辩率,645536色显示,一般来说用这个就行了。
vga=771 (800x600x256)
vga=788 (800x600x645536)
vga=773 (1024x768x256)
vga=791 (1024x768x65536)
然后保存退出
reboot重启机器,开机时你就可以看到分分辩率比以前高很多了。
+++
Linux 或 Unix java控制台输出的是乱码的解决方案
---
http://dandansdu.javaeye.com/blog/271568
---
关键字: linux 或 unix java控制台输出的是乱码的解决方案
困扰了我两天了
终于知道是什么原因了
原来是因为jvm的编码方式导致的。
你可以通过System.getProperty("file.encoding")这个方法查看现在的这个文件的编码方式是什么,然后再比对一下传过来的数据的格式,这样看看是不是转换正确或者是编码不一致,然后再改一下自己的程序就可以了,
也可以用System.getProperties().list(System.out); 打印出所有的系统参数设置,可能这样更一目了然
我遇见的问题是一个C/S结构的问题,客户端在windows,服务器端在Linux,客户端编码是GBK,但是通过上面的方法我发觉服务器端的编码竟然是ANSI_X3.4-1968。
最简单的方法其实是让服务器端启动的时候编码也变成GBK,
下面的这些是拷贝的别人的:
在Unix平台。打印出来的中文都是乱码。用Log4j记录的日志中,中文也是?,
因为每一个应用都会启动一个Java进程,启动方法就是 java $OPTS com.xxx.xxx.xxx
其中变量$OPTS就是我们要设置的JVM的启动参数。在这里设置JVM的字符集。设置如下:
-Ddefault.client.encoding=GBK -Dfile.encoding=GBK -Duser.language=Zh
加上这个后,基本上乱码问题就会搞定了。如果还是搞不定,我就没有办法了。
log4j向文件中记录日志时的中文乱码不能用上面的方法设置。设置方法为:
打开log4j.properties文件,在里面的文件Appender中设置输出字符集就可以了。如下所示:
log4j.appender.buss.encoding=GBK