Re: Re: [python-chinese][OT]在Windows下??BIG5??的繁?中文文件,有什麽好的方案
"fluke.l" <[email protected]> Tue, 22 Jan 2008 11:23:30 +0800
| Newsgroups | gmane.comp.python.chinese |
|---|---|
| Message-ID | <[email protected]> |
发件人: Jiahua Huang 发送时间: 2008-01-22 11:13:42 收件人: [email protected] 抄送: 主题: Re: [python-chinese][OT]在Windows下BIG5a的繁w中文文件,有什麽好的方案 当然是你的问题啦, 一个个说吧 2008/1/22 fluke.l <[email protected]>: > > > 按照你的说法,是不是说,在gtk下,默认的显示编码就是utf8,kde的是utf16,windows的我知道也是utf16, > > 我印象中,utf8和gbk或者big5的编码本身是不兼容的--不像gbk是兼容了gb2312的编码,只是增加了gb2312以外的内容。(现在讨论问题的问题不太严肃,就不去查资料了,上面说的都有可能有错。) > 这些编码都是转成 utf8 或 utf16 来处理的,你不会不知道转码吧, 还真的不知道我以为繁体的内码要用繁体的相关调用来显示,比如我以为可能是这样的情况: 程序 -> 调用绘图接口显示菜单和文字 -> 绘图接口把文字用默认或者预定的编码来找到对应的字体,比如同样 0x1234 这个编码,也许在不同的字体体系下面,对应不同的字。 ->绘图接口调用写字的调用来根据字体描绘文字 当然啊,现在我说什么都多余,因为你已经说了答案。我之前没有了解系统这方面的原理,有这样的猜测我想也不为过把。 > 那么我在gedit下,如果使用的是en.utf8的locale(Jiahua你说和locale没关系),我试过默认情况下是不会识别出big5编码的,这个时候,我要怎么去选择让他知道这个是big5的文件呢? > 截图不是给你发了么, 打开文件对话框里边自己选编码, 要自动识别里加上的话, 打开 gconf-editor 注册表, 照着截图 http://paste.ubuntu.org.cn/i4893.png 修改 /apps/gedit-2/preferences/encodings/auto_detected 加上 自动探测编码 这个没有设置过,不过我记得gedit是默认开了自动探测的,并且,打开文件的时候,貌似没有选择文件编码的选项,只有保存编码。所以我才需要设置locale让gedit用默认的locale来认一下文件编码。 > 我记得(短时间内是不能再现这个情况了,因为我刚换机器,linux还没装)在这个时候,在gedit处选择另存为,文件编码的选项里面,默认是utf8(是不是可以说,他认为文件编码是utf8?),并且,这个时候,显示出来的是乱码的。当然我肯定这个是big5的文件,文件是我在繁体的环境下面写的,并且在香港朋友的服务器上面,他默认是繁体的网站上面显示正常并且浏览器默认识别的也是big5,apache发出的header里面是否有char的信息,我就忘记查了。 你必须打开的时候选择啊, 你都转码转错了,再解码有啥用 > > 这个时候不能选择用big5去保存,我试过存了以后,文件在big5的环境打开也是乱码的了,大概是因为gedit把这个big5的流,当作utf8,并且使用utf8->big5的算法来转换,所以就成了乱码了。 > 用 python 说吧, 装载的时候会试图 decode(enc), 保存的时候再 encode(enc), 你 decode 都错了,怎么指望 encode 能对 这个明白了,谢谢 > locale,字体,内码等等问题,其实我自己都不太清楚,不管是不是因为这个问题,找时间研究一下,应该还是有好处的。 > 没必要, 这种"研究" 能玩出什么东西来, > 另外,简体windows > xp环境下,editplus打开一个big5的程序,也是和我说的gedit的情况类似,只是editplus默认的保存编码是ansi。 > 一样是你自己注意打开的时候选 _______________________________________________ python-chinese Post: send [email protected] Subscribe: send subscribe to [email protected] Unsubscribe: send unsubscribe to [email protected] Detail Info: http://python.cn/mailman/listinfo/python-chinese _______________________________________________ python-chinese Post: send [email protected] Subscribe: send subscribe to [email protected] Unsubscribe: send unsubscribe to [email protected] Detail Info: http://python.cn/mailman/listinfo/python-chinese