LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1024|回复: 7

为何在shell能看到NTFS下面的所有中文文件而在Konqueror下面只能看到部分?

[复制链接]
发表于 2006-12-22 20:56:31 | 显示全部楼层 |阅读模式
昨晚没事干弄出点乱七八糟的问题,今天干脆重装了...

原来没有出现过这样问题
还有原来Amarok播放mp3没有乱码的,现在却有了...
印象中设置是一样的,怀疑见鬼了.:ask

麻烦大家帮忙看看有没有什么问题,谢谢
yu@love:~$ locale
LANG=zh_CN.gbk
LC_CTYPE="zh_CN.gbk"
LC_NUMERIC="zh_CN.gbk"
LC_TIME="zh_CN.gbk"
LC_COLLATE="zh_CN.gbk"
LC_MONETARY="zh_CN.gbk"
LC_MESSAGES="zh_CN.gbk"
LC_PAPER="zh_CN.gbk"
LC_NAME="zh_CN.gbk"
LC_ADDRESS="zh_CN.gbk"
LC_TELEPHONE="zh_CN.gbk"
LC_MEASUREMENT="zh_CN.gbk"
LC_IDENTIFICATION="zh_CN.gbk"
LC_ALL=
yu@love:~$ cat /etc/fstab
/dev/hda3        swap             swap        defaults         0   0
/dev/hda4        /                reiserfs    defaults         1   1
/dev/hda1        /mnt/hda1        ntfs        ro,umask=000,iocharset=cp936     0   0
/dev/hda6        /mnt/hda6        ntfs        ro,umask=000,iocharset=cp936     0   0
/dev/hda7        /mnt/hda7        ntfs        ro,umask=000,iocharset=cp936     0   0
/dev/hda5        /mnt/hda5        vfat        rw,umask=000,iocharset=cp936     0   0
/dev/cdrom       /mnt/cdrom       auto        noauto,owner,ro  0   0
devpts           /dev/pts         devpts      gid=5,mode=620   0   0
proc             /proc            proc        defaults         0   0
 楼主| 发表于 2006-12-23 13:47:28 | 显示全部楼层
发现点新情况

yu@love:/mnt/hda7/下载$ ls -l
ls: 1999-2003香港十大中文金曲: 没有那个文件或目录
ls: 张含韵精选MV视频: 没有那个文件或目录
总计 4
dr-xr-xr-x 1 root root 4096 2006-12-01 21:44 [11-29][Discovery][建筑奇观:杭州湾跨海大桥][rmvb][196MB]
dr-xr-xr-x 1 root root 4096 2006-12-01 21:32 半支烟
dr-xr-xr-x 1 root root    0 2006-12-01 21:30 未竟一生
dr-xr-xr-x 1 root root    0 2006-12-01 21:29 蔡妍
yu@love:/mnt/hda7/下载$ ls
[11-29][Discovery][建筑奇观:杭州湾跨海大桥][rmvb][196MB]  半支烟            未竟一生
1999-2003香港十大中文金曲                                  张含韵精选MV视频  蔡妍
yu@love:/mnt/hda7/下载$
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-12-25 22:46:17 | 显示全部楼层
自己顶..
有人说ntfs驱动支持不好,
装ntfs-3g用不了
回复 支持 反对

使用道具 举报

发表于 2006-12-26 10:08:01 | 显示全部楼层
/dev/hda6        /mnt/e                ntfs        nls=utf8,user,noauto,umask=000        0        0

用nls=utf8试试看。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-12-26 15:46:55 | 显示全部楼层
咬咬牙把LANG=zh_CN.gbk 改为 zh_CN.utf8
iocharset也改为utf8,什么事情都没有了..
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-12-26 15:54:01 | 显示全部楼层
发重了,加点东西


GB2312(1980年)一共收录了7445个字符,包括6763个汉字和682个其它符号。汉字区的内码范围高字节从B0-F7,低字节从A1-FE,占用的码位是72*94=6768。其中有5个空位是D7FA-D7FE。

GB2312支持的汉字太少。1995年的汉字扩展规范GBK1.0收录了21886个符号,它分为汉字区和图形符号区。汉字区包括21003个字符。2000年的GB18030是取代GBK1.0的正式国家标准。该标准收录了27484个汉字,同时还收录了藏文、蒙文、维吾尔文等主要的少数民族文字。现在的PC平台必须支持GB18030,对嵌入式产品暂不作要求。所以手机、MP3一般只支持GB2312。

从ASCII、GB2312、GBK到GB18030,这些编码方法是向下兼容的,即同一个字符在这些方案中总是有相同的编码,后面的标准支持更多的字符。在这些编码中,英文和中文可以统一地处理。区分中文编码的方法是高字节的最高位不为0。按照程序员的称呼,GB2312、GBK到GB18030都属于双字节字符集 (DBCS)。

ASCII、GB2312、GBK到GB18030的编码方法是向下兼容的。而Unicode只与ASCII兼容(更准确地说,是与ISO-8859-1兼容),与GB码不兼容。例如“汉”字的Unicode编码是6C49,而GB码是BABA。


GBK的文字编码是双字节来表示的,即不论中、英文字符均使用双字节来表示,只不过为区分中文,将其最高位都定成1。

至于UTF-8编码则是用以解决国际上字符的一种多字节编码,它对英文使用8位(即一个字节),中文使用24位(三个字节)来编码。对于英文字符较多的论坛则用UTF-8节省空间。


GBK包含全部中文字符,
UTF-8则包含全世界所有国家需要用到的字符。

GBK是在国家标准GB2312基础上扩容后兼容GB2312的标准(好像还不是国家标准)

UTF-8编码的文字可以在各国各种支持UTF8字符集的浏览器上显示。
比如,如果是UTF8编码,则在外国人的英文IE上也能显示中文,而无需他们下载IE的中文语言支持包。
回复 支持 反对

使用道具 举报

发表于 2006-12-26 20:38:32 | 显示全部楼层
Post by fishyu1984
UTF-8编码的文字可以在各国各种支持UTF8字符集的浏览器上显示。
比如,如果是UTF8编码,则在外国人的英文IE上也能显示中文,而无需他们下载IE的中文语言支持包。


有编码,没有字体,还是不能显示
回复 支持 反对

使用道具 举报

发表于 2006-12-26 21:18:25 | 显示全部楼层
有字体,即便各种legacy encoding,现代浏览器也没问题。

html情况还特殊,即便不用unicode编码,也能表现所有unicode 3.2字符,所以字体才是重要的。

测试:
  1. <html>
  2. <head>
  3. <meta http-equiv="Content-Type" content="text/html; charset=gbk">
  4. <title>测试页</title>
  5. <body>
  6. 泰文:&#x0E01;<br>
  7. 阿拉伯文: &#x060C;<br>
  8. 西里尔文:&#x0403;<br>
  9. 希腊文: &#x038F;<br>
  10. 希伯来文:&#x05D1;<br>
  11. 孟加拉文:&#x0985;<br>
  12. 欧元符号:&#x20AC;<br>
  13. 国际音标:&#x02A7;<br>
  14. </body>
  15. </html>
复制代码

把这些代码保存为gb2312编码的html文件,然后用firefox等浏览器打开看看。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表