ubuntu默认的打开.txt文件用的是gedit,可gedit默认编码是UTF8,打开windows下编辑的gb2312的文档都是乱码。解决方法之一就是把gedit的编码改为GB2312,方法如下:

在Applications菜单上点右键,选择EditMenu.在MainMenu的对话框中勾选SystemTools-ConfigurationEditor,并从Applications菜单中开启。

依次开启/apps/gedit-2/preferences/encodings/双击右侧auto_detected,在弹出对话框中点选Add,添加Values值为GB2312,确定后选中,点选Up按钮将其移至第一位。

同样方法,对show_in_menu进行设置,并将GB2312置于首位。

还有一种方法是用openoffice打开.txt文件时,会让你选择编码,选GB2312就行了。

***********************************************
1.系统默认编码

我们知道在中文 Windows 下一般来说系统的默认编码是 GBK, 从 Java 开发的角度来说, 就是在进行诸如 Java 源代码编译,文件读写等操作时, 默认使用的编码是 GBK; 而我们参照一般的 Ubuntu 中文安装文档, 可能会建议将默认的语言设置为zh_CN.UTF-8, 这样会带来一些问题, 比如我在 Windows 使用 Eclipse 时的编辑器的默认编码是 GBK, 但是在Ubuntu 下面就是 UTF-8, 同样是使用 Eclipse, 在 Windows 下的中文文档到了 Ubuntu 中会产生乱码,必须手工逐个文档设置属性中的编码为 GBK 才可以正常; 一些测试代码也是以默认编码读取文件的, 这些代码读取出来的文件内容也会包含乱码.

所以, 最好是将系统的默认编码设置为 GBK, 这样和 Windows 下面的开发环境最接近. 设置的方法应该不止一种, 我采用的是编辑 /etc/environment, 改成这个样子:
LANGUAGE="zh_CN:zh:en_US:en"
GST_ID3_TAG_ENCODING=GBK
LANG=zh_CN.GBK
LC_CTYLE=zh_CN.GBK

**********************************************
Ubuntu 中文编码设置
今天开始把工作环境全部迁移到Linux,一天下来,算平静。很庆幸当初在win下面用了MozillaThunderbird邮件客户端,而不是OutLook,这简直太方便了,可以直接把上百兆的邮件存放目录复制到linux下直接用,与之形成鲜明对比的是微软的新版live Messager,今天发现微软的这个东西甚至不支持安装在他们自己的WinXP64/Wind2003/2008上面?我没有什么可说的呢。

Ubuntu 默认采用UTF8编码,可以方便global。但对中文支持,还不细致,即便默认采用中文安装,也并不会自动添加GB*等支持,致使在Ubuntu下访问部分Win文本文件时,出现乱码。

I. 配置系统环境
执行 sudo vi /var/lib/locales/supported.d/zh
加入以下配置参数

zh_CN.GB18030 GB18030 (最新汉字编码字符集,向下兼容GBK,GB2312)
zh_CN.GBK GBK (汉字扩展编码,向下兼容GB2312, 并包含BIG5全部汉字)
zh_CN.GB2312 GB2312 (简化汉字编码字符集, 最近有客户要我们改进GB2312,太看得起我们了,我只能说:"NO!")
zh_CN.GB18031 GB18031 (数字键盘汉字编码输入,面向手持设备,我的Nokia3120从来就是发短信,接听电话,无法和PC通讯,就不用这个了。     maybe用Google Android SDK的大侠们需要这个)
zh_HK.BIG5 BIG5 (繁体)
zh_TW.BIG5 BIG5 (繁体)

然后执行 sudo locale-gen
提示以下信息,成功了
zh_CN.GB18030... done
zh_CN.GBK... done
......

II. 系统环境支持GB*内码了,但用vi, gedit等工具访问文件还会继续乱码,需要针对不同的工具分别配置,使之自己检测支持范围内的编码(成功实现)
e.g. vi
执行 sudo vi /etc/vim/vimrc
加入以下配置参数
let &termencoding=&encoding
set fileencodings=utf-8,gb18030,gbk,gb2312,big5

依次打开应用程序──系统工具──配置编辑器(配置)

也就是:e.g. gedit

执行 sudo gconf-editor
选择 apps/gedit-2/preferences/encodings
找到 auto_detected 编辑,在Values中分别加入 GB18030,GBK,GB2312,BIG5然后置顶

OK~

感谢lec的支援。
enca工具很方便,用于检测文件内码(前提是系统环境支持,如,环境不支持BIG5,是无法检测的,这个晕了我许久)
安装 sudo apt-get install enca
用法 enca filename

这个工具是在google搜索到的(http://blog.oolec.com/?p=79),绕了地球一圈才找到,猛发现文章作者就坐在我旁边,以后再找东西先问问,别瞎跑。

转自:http://blog.csdn.net/cybernewer/article/details/4223886

windows文件中的中文在ubuntu下乱码(小弟参考了许多都不行,这个绝对行啊) .相关推荐

  1. windows文件(.txt,.h,.cpp等等)中的中文在ubuntu下乱码的解决方法

    ubuntu默认的打开.txt文件用的是gedit,可gedit默认编码是UTF8,打开windows下编辑的gb2312的文档都是乱码.解决方法之一就是把gedit的编码改为GB2312,方法如下: ...

  2. excel调用python编程-使用Python和xlwt向Excel文件中写入中文的实例

    sheet1.write(row_num,0,f) row_num = 1 book.save('demo.xls') 程序执行结果如下: grey@DESKTOP-3T80NPQ:/mnt/e/01 ...

  3. mysql函数名称顿号_在中文Windows 7的输入中文标点符号状态下,按下列( )可以输入中文标点符号顿号...

    在中文Windows 7的输入中文标点符号状态下,按下列( )可以输入中文标点符号顿号 答:B或C PowerPoint提供 种新幻灯片版式供用户创建演示文件时选用 答:28 1A=_________ ...

  4. linux系统中fcitx的安装,ubuntu下安装fcitx

    今天试着在ubuntu下安装fcitx(fcitx是一种五笔拼音输入法),下面是我在一个人的博客上看到的,可以成功安装fcitx,我尝试过了,现在分享给大家. 下载安装fcitx$sudo apt-g ...

  5. 在一个JS文件中包含中文字符串,通过innerHTML输出后中文乱码?

    在一个JS文件中包含中文字符串,通过innerHTML输出后中文乱码? Posted on 2008-07-13 12:00 尹合磊 阅读(1902) 评论(0)  编辑 收藏 所属分类: ASP.N ...

  6. python读excel乱码_解决Python2.7读写文件中的中文乱码问题

    Python2.7对于中文编码的问题处理的并不好,这几天在爬数据的时候经常会遇到中文的编码问题.但是本人对编码原理不了解,也没时间深究其中的原理.在此仅从应用的角度做一下总结, 1.设置默认编码 在P ...

  7. java调用pdfbox转pdf文件为图片文件,有中文时在windows上正常,部署到linux下乱码

    最近遇到了一个很头疼的问题,我们的项目移动端需要一个读pdf的功能,但是手机端开发人员说移动端是用jquerymobile做的,不能直接甩pdf文件过去(原因是pdf文件太大),于是乎我们想到了2个解 ...

  8. 用java SDK/bin目录下的native2ascii.exe把.properties文件中的中文转换成unicode字符,实现国际化...

    需要用到java SDK\\bin 目录下的native2ascii.exe程序,把你写的文本文件转成unicode字符即可,例: native2ascii 源文件名.txt 新文件名.txt 测试 ...

  9. linux下latex中文字体,Ubuntu下LaTex中文环境配置

    http://www.cnblogs.com/lienhua34/p/3675027.html --------------------------------------- [转] http://h ...

最新文章

  1. 设计模式(五)责任链模式
  2. 下半部机制之工作队列
  3. HDU [P3605] Escape
  4. 10kv电压互感器型号_电气行业需要知道的10KV电压互感器基本技术参数
  5. java 1.8.0 安全_RedHat安全更新修复OpenJDK1.8.0版本漏洞
  6. 【论文复现】使用fastText进行文本分类
  7. 一句话设置UITextField、UITextview的字数限制和placeholder
  8. 排名怎么查_常见客户SEO问题解答:网站降权了应该怎么处理?
  9. jsp 如何上传文件到服务器上,如何使用JSP / Servlet将文件上传到服务器?
  10. php编写 密码检查,php-检查旧密码和新密码的规则
  11. windows禅道官网地址及环境搭建
  12. 关于西门子plc的CPU
  13. Unity HDRP中代码动态修改天空盒以及其他环境参数
  14. 微信小程序弹窗有输入框且可以使用名文和密文输入
  15. JAVAScript——JQuery—$ ( )
  16. 金融day03 —— 银行支付结算、银行资产业务
  17. 闭关修炼(六)各种锁
  18. 从零基础认识KindEditor实现图片上传
  19. 9月15日,我们爬山去
  20. 视频会议业务接力增长,“云+端”战略布局未来

热门文章

  1. 还能这样?把 Python 自动翻译成 C++
  2. 安装 Ffmpeg 步骤
  3. 大剑无锋之你了解HTTPS吗?那么它为什么安全?【面试推荐】
  4. SpringBoot如何把mysql中的数据显示到html页面上?
  5. SparkShell中提交任务java.net.ConnectException: Call From henu4/192.168.248.244 to henu2:9000 failed on co
  6. Hbase 02_伪分布式、完全分布式
  7. leetcode 376. Wiggle Subsequence | 376. 摆动序列(动态规划)
  8. leetcode 316. Remove Duplicate Letters | 316. 去除重复字母(单调栈解法)
  9. JDK14性能管理工具:jmap和jhat使用介绍
  10. 安卓学习 之 UI控件(三)