装好了Ubuntu 10.04后,打开部分Windows下的txt文本文件的时候,中文显示为乱码。但是自己用Gedit编写新文件的时候,输入的中文却可以正常显示,保存后再退出也可以正常显示。而且对于Windows下的文本文件,也不是全部含有中文的都显示为乱码。
整理下思路,如果真的是中文无法正常显示的问题,也就是字体设置问题,是不应该有文件能够正常显示中文的,应该全部乱码才对。而事实上并非如此,所以这个猜测可以排除。那么,会不会是文件编码的问题?Linux下默认的编码是UTF-8,而Windows下默认的编码是GB2312/GBK。难道是编码问题引起的问题?切换到Windows系统下,输入一段中文后,保存为UTF-8的txt文件,然后再另存同一个文件为GB2312编码格式。再次切换到Ubuntu 10.04下,打开这两个文件,果然GB2312编码的文件乱码了。
看来问题已经找到了,接下来就是解决问题了。其实问题的解决办法很简单,步骤如下:
1. 打开终端,在其中输入命令:
#gconf-editor
并回车。
2. 在新开的窗口里,在左边依次展开“apps”、“gedit-2”、“preferences”、“encodings”。如图所示:
配置编辑器 - encodings
3. 在右边的窗口里,双击“auto_detected”。
4. 在弹出的对话框里,单击“添加”按钮,输入“GB18030”并点击“确定“按钮。如图所示:
编辑键
5. 现在,这个对话框里的列表中的最下面多了一个“GB18030”的选项,然后选中他,点击右边的“向上”按钮,直到“GB18030”排到第一位。
6. 关闭这两个对话框,再次运行Gedit即可生效。
现在,GB2312/GBK/GB18030编码的文本文件中的中文文字终于不会显示乱码了。
PS:在以前的Ubuntu 9.10里面,我打开同样的文件并不会乱码。原来是Ubuntu 9.10中文版中默认带有GB18030这个编码选项,不需要手动添加的原因。而Ubuntu 10.04里不知道怎么的没有默认添加,所以需要手动添加来解决乱码的问题。