解决Ubuntu的乱码问题

 

使用ubuntu最郁闷的事莫过于乱码了,网页中的flash乱码、TXT文档乱码,歌曲信息乱码、mplayer播放器字幕乱码,wine乱码等等。以前安装8.04,8.10都只是在播放器里遇到过乱码,可是在装了9.04以后,竟然发现TXT文件也是一片乱码,并且那乱的水平比Windows的乱码好要高。为了使用Windows下保存的TXT文件,不得不找各种方法。这些是常见的。
   
    终端输入:gconf-editor(我感觉有点类似Windows下的注册表),依次打开;apps—gedit2—preferences— encodings双击右边的“auto_detected”输入:gb18030,点向上把它移动到最上边就可以了。这样打开TXT就不会乱码了。

    终端中输入:sudo gedit /etc/fonts/conf.d/49-sansserif.conf
将其中的第1、2、4个后面的sans-serif用你自己系统中的中文字体的名字代替,
比如:系统中安装了wqy-zenhei.ttf(文泉驿,ubuntu中文自带),则用wqy-zenhei代替上述所说的字段,结果如下:

<match target=”pattern”>
<test qual=”all” name=”family” compare=”not_eq”>
<string>wqy-zenhei</string>
</test>
<test qual=”all” name=”family” compare=”not_eq”>
<string>wqy-zenhei</string>
</test>
<test qual=”all” name=”family” compare=”not_eq”>

<string>monospace</string>

</test>

<edit name=”family” mode=”append_last”>
<string>wqy-zenhei</string>
</edit>
</match>
保存退出,Flsh就好了。

    安装mutagen:sudo apt-get install python-mutagen
然后转到你的MP3目录,例如我的歌曲放在系统的音乐文件夹则输入:cd /home/holmesrain(此为我的用户名,你需要换成你的用户名)/音乐
执行以全命令进行转换:mid3iconv -e GBK *.mp3。完成以后用播放器导入就不会有乱码了。

    终端执行: sudo gedit /etc/fstab ,找到这一行:
/dev/scd0 /media/cdrom0 udf,iso9660 user,noauto 0 0
在options里添加一句iocharset=utf8即可,如下所示:/dev/scd0 /media/cdrom0 udf,iso9660 user,noauto,iocharset=utf8 0 0
以后遇到含中文的光盘就不会出现乱码和问号了。

    按下Alt+F2,运行对话框。输入gksu gedit点击运行,在打开的文本编辑器中,打开文件“/etc/fonts/conf.d/49-sansserif.conf”
将18行的<string>'''sans-serif'''</string>换成<string>'''sans serif'''</string>,在打开某些PDF文件时中文方块就不会出现了。

    不过,我只遇到过TXT乱码,Flash乱码,播放器中文名乱码,其他的几个没有遇到,也不知道能不能成功,就看人品了。

   也许,很多人就会说Ubuntu LInux的不是,认为系统对中文的支持实在是太差。殊不知,乱码问题并不是Ubuntu的错。比如说,Ubuntu下双击Windows下保存的 TXT,就是乱码。但是右击,选择用OpenOffice打开,就会出现一个提示,选择GB18030或者Unicode的编码方式,就可以很好的打开了,没有任何乱码。其实,Ubuntu下乱码出现全部是编码方式的问题。Ubuntu默认的是UTF-8,在UTF-8的编码的传输过程中即使丢掉一个字节,根据编码规律也很容易定位丢掉的位置,不会影响到其他字符,故这种编码非常适合作为传输编码。正式它的稳定性与国际标准性使得Ubuntu选择了它。 Windows下,TXT都是默认保存为ANSI编码方式的,不同 ANSI 编码之间互不兼容,当信息在国际间交流时,无法将属于两种语言的文字,存储在同一段 ANSI 编码的文本中。我们也经常会遇到,Windows下,从网页保存大量文字时可能出现无法保存的提示。


    当然,使用UTF-8汉字要3个字节,而ANSI只需要2个字节。从这一点来说,Ubuntu对中国人还是不够“人性化”。

    这个也让我想起了网页标准。国际标准为W3C,而微软凭借IE捆绑式的推广模式,弃国际标准以不顾,给整个网络的兼容性带来了严重的阻碍。可是即使如此,人们也是宁愿开发适合IE标准的网页已解决兼容性问题,而不是找找问题的本质。后Opera向欧盟执委会申诉,指控微软的浏览器措施妨碍竞争。微软因为未能遵守欧盟先前下达的裁决令,而遭到破纪录的罚金。至此,微软的IE8才有了兼容模式来兼容W3C标准。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Ubuntu 20.04 上解决 Oracle Client 问题,可以尝试以下步骤: 1. 确认 NLS_LANG 环境变量是否设置正确,可以在终端中输入以下命令查看: ``` echo $NLS_LANG ``` 如果没有输出或输出的字符集与数据库不匹配,可以通过以下命令设置: ``` export NLS_LANG=<字符集>.<字符集代码> ``` 其中 <字符集> 是数据库的字符集名称,例如 AL32UTF8,<字符集代码> 是字符集的代码页,例如 AL32UTF8 的代码页为 UTF8。 2. 确认系统的本地化设置是否正确,可以在终端中输入以下命令查看: ``` locale ``` 如果输出的字符集不是与数据库相同的字符集,可以通过以下命令设置: ``` sudo update-locale LANG=<字符集>.<字符集代码> ``` 3. 确认 Oracle 客户端的字符集是否正确,可以在 Oracle 客户端安装目录下的 network/admin 目录中找到 sqlnet.ora 文件,添加或修改以下行: ``` NLS_LANG=<字符集>.<字符集代码> ``` 其中 <字符集> 是数据库的字符集名称,例如 AL32UTF8,<字符集代码> 是字符集的代码页,例如 AL32UTF8 的代码页为 UTF8。 4. 如果以上步骤都无法解决问题,可以尝试修改数据库字符集。具体来说,可以通过 ALTER DATABASE CHARACTER SET 命令来修改数据库字符集,例如 ALTER DATABASE CHARACTER SET AL32UTF8。但是,这个操作需要谨慎,因为它会涉及到数据库中所有数据的转换。 以上是一些可能的解决方案,具体选择哪一种取决于具体的情况。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值