[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
没有算法,只能查表

TOP

1

评分人数

    • broly: 乐于助人技术 + 1

TOP

为什么你对字形码那么情有独钟?

你自己也说了,如果说存在这样一个供内码转换的表,那么在知道ANSI码的时候自然可以查表得到相应的UNICODE码。

事实上,Windows系统中的确存在这样一个映射表,将GB2312码映射成对应的Unicode码。

举个例子来说,“人”的GB2312码是C8CB,然后去查映射表,C8CB对应的Unicode码是4EBA,这就够了啊,为什么要牵扯到字形码呢?

PS:也许我没有完全理解你在问什么。

TOP

如果是vbs/js,字符本来就是以Unicode形式存储在内存中的。

你这个问题似乎要深入到操作系统内部了。。
...
powerbat 发表于 2011-12-1 23:25


冒昧地问一下,你以前是不是某个论坛的管理员?

TOP

本帖最后由 Demon 于 2011-12-2 13:44 编辑

C:\Windows\System32目录下的*.NLS就是映射表文件,C_936.NLS就是GB2312到Unicode的映射表。

NLS是National Language Support的缩写。

在台湾有一个所谓的“Unicode补完计划”,原理就是通过修改系统自带的C_950.NLS来拓展BIG5编码的字符,让BIG5编码中能显示简体中文。

具体内容可以Google关键词“BIG5 Extension 計畫”,至于百度,劝你还是少用,百度一下什么都不知道。

另:那个问题我问的是powerbat,而不是你。

TOP

回复  Demon


很好很详细。
我仔细读了你介绍的文章,受益匪浅,不过有个疑问:里面说chr ...
wankoilz 发表于 2011-12-2 14:48


我在6楼给出的链接中有,Chr能够接受的参数范围和系统当前的代码页有关,中文系统默认是936,也就是GB2312。

TOP

返回列表