Feeds

536 items (535 unread) in 13 feeds

Firefox CFBU成员 Firefox CFBU成员

三翻领的个人空间

  • Permalink for 'python下关于文件编码的自动检测'

    python下关于文件编码的自动检测

    Posted: January 4, 2008, 10:47pm PST
    LBL_TAG_TAGStag.php?tag=%E7%BC%96%E7%A0%81 tag.php?tag=%E8%87%AA%E5%8A%A8%E6%8E%A2%E6%B5%8B Python  
    一直以来,我写的一个app深受这个问题的困扰,看了一些代码,但是效果都不是很好,这次google中无意看到了一个模块可以解决这个问题,因此发出来大家分享。

    该模块的名字是chardet,可以在这里查看细节,具体也就不多说了。后来eix了一下才知道gentoo的portage是有这个模块的,不过考虑到尽量减少app的依赖,于是就添加了一个副本。

    当前的编码问题真是复杂,尤其是我们简体中文用户(其他很多语系估计也好不了多少),一边是GB国标,一边是国际化的unicode,而自动检测编码又做不到100%的正确率,实在很头痛,倒还不如把BOM这个没办法的办法发扬光大。

    在这里也就顺便提一下lrcShow-II关于编码的一些问题。由于现在实现了lrc歌词编码的自动探测,因此无论是简繁体中文用户还是其他语言用户,都无须再设置本地lrc歌词的编码了,更何况本地的歌词有可能是多种编码混合的,这样自动探测编码就更加有优势了。但是还是要设置一个写编码,默认是gb18030,因为搜索引擎中,百度和搜狗提供gb的歌词,ttplayer提供utf8歌词,写成gb18030都没有问题。国外用户基本上很难通过搜索引擎搜索到歌词,更多的是考虑到本地编码,万一能够搜索到,那么在默认情况下保存歌词就会有困难,比如在百度的搜索引擎上搜索到了歌词,而写编码如果设置成了EUC-JP,那么一般就会出错,这时候到还是gb或者utf8不会有问题。
    Tags - 编码 , 自动探测