• 热门标签

当前位置: 主页 > 航空资料 > 计算机 >

时间:2010-08-09 13:24来源:蓝天飞行翻译 作者:admin
曝光台 注意防骗 网曝天猫店富美金盛家居专营店坑蒙拐骗欺诈消费者

用的80,000 象形文字中的20,000 个左右。(现代越南语使用一种罗马字母。)
UCS (Universal Character System)��通用字符系统,也称作ISO 10646,使用四个字节(确切地说是31 位)表
示一个字符,以给20 多亿不同的字符提供足够的空间。这样能容易地覆盖地球上任何一种文字和语言使用的每个字符。而
且还可以给每一种语言指定一个完整的字符集,使法语中的“e”不同于英语和德语中的“e”等等。
与Unicode 一样,UCS 定义了许多不同的变种和压缩形式。纯粹的Unicode 有时指USC-2,是双字节的UCS。UTF-16 是一种
特别的编码,它把一些UCS 字符安排在长度变化的字符串中,在这种方式下Unicode(UCS-2)数据不会改变。
UCS 超越Unicode 的优点主要是理论方面的。在UCS 中实际定义过的字符就是Unicode 中已有的字符。但是UCS 为以后的字
符扩充提供了更多的空间。
XML 实用大全
第 175 页
7.5 如何使用Unicode 编写XML
Unicode 是XML 自己的字符集,至少在能得到的字体范围内,XML 浏览器会很好的显示它。但是支持全部Unicode 的文本编
辑程序不是很多。因此,不得不使用下面两种方法之一解决这个问题:
1. 使用本地字符集如Latin-3 编写,然后把文件转换成Unicode 文件。
2. 在文本中包含Unicode 字符引用,它们在数值上等同于特定的字符。
在主要使用一种文字或一种文字附加ASCII 码输入大量文本的情况下,第一种方法更可取。文档需要掺少量的多种文字时,
可使用第二种方法。
7.5.1 利用字符引用在XML 文件中插入字符
一个Unicode 字符是介于0 和65,535 之间的一个数。如果没有使用Unicode 书写的文本编辑程序,通常可以使用字符引用
在XML 文件中插入字符。
Unicode 字符引用由两个字符&#组成,后面跟有要插入字符的编码和分号。例如,希腊字母π 的Unicode 字符值是960,因
此需要在XML 文件中插入π。古斯拉夫字母ч 的Unicode 值是1206,需要在XML 文件中插入Ҷ。
Unicode 字符引用也可以用十六进制数指定,尽管多数人习惯使用十进制数,Unicode 规范中给出的字符值是双字节十六进
制数。直接使用十六进制数更简单一些,不必把它们转换成十进制数。
使用十六进制数需要在&#之后添加一个x 来指明。例如,π 的十六进制数是3C0,因此插入XML 文件中的是π;古斯
拉夫语字母ч 的十六进制数是4B6,因此在XML 文件中的应当是Ҷ。两个字节表示4 个十六进制位,通常在十六进
制字符引用中包含一个起始的0 来构成4 位十六进制数。
十六进制和十进制Unicode 字符引用可用来嵌入那些会被解释为置标的字符。例如,与字符(&)的编码是&或&,
小于号(<)的编码是&#60;或&#x003C;。
7.5.2 其他字符集与Unicode 字符集之间的转换
输出XML 文件的应用软件如Adobe Framemaker,能够自动转换为Unicode 或UTF-8 文件。否则必须使用一种转换工具。Sun
的免费工具包Java Development Kit (JDK)包含一个名为native2ascii 的简单命令行实用工具,能够完成多种常见和不常
见的本地字符集与Unicode 之间的转换。
例如,下面的命令把文件名是myfile.txt 文本文件从操作平台默认的编码转换为Unicode。
C:\>native2ascii myfile.txt myfile.uni
可使用-encoding 选项指定其他编码。
C:>native2ascii -encoding Big5 chinese.txt chinese.uni
还可使用-reverse 选项,把Unicode 转换为本地编码。
C:>native2ascii -encoding Big5 -reverse chinese.uni chinese.txt
XML 实用大全
第 176 页
如果没有输出文件名,转换后的文件将打印输出。
native2ascii 程序同样能处理java 类型的Unicode 转义符,它们是以\u09E3 的格式嵌入的。这与XML 中的数值字符引用不
同,尽管比较相似。使用native2ascii 把文件转化为Unicode,仍然可以使用XML 字符引用&#0;&#0;查看程序能够识别它
们。
7.5.3 如何使用其他字符集编写XML
在没有被预先告知的情况下,XML 处理器默认文本实体字符使用UTF-8 编码,因为ASCII 码是包含在UTF-8 中的一个子集,
所以XML 处理器同样可以分析ASCII 码文本。
除了UTF-8,XML 处理器必须能读懂的唯一字符集是原始Unicode。当不能把文本转换成UTF-8 或原始Unicode 时,可以使
文本保持原样并告诉XML 处理器文本所使用的字符集。这是最后一种手段,因为这样做并不能保证一个尚未成熟的XML 处理
器能够处理其他编码。除此之外,Netscape Navigator 和Internet Explorer 都能很好地解释常见的字符集。
在文件开始的XML 声明中包含一个encoding 属性,告诉XML 处理器正在使用的是非Unicode 编码。例如,说明整个文档使
用默认的Latin-1(除非在嵌套的实体中有别的处理指令),可使用下面的XML 声明:
<?xml version="1.0" encoding="ISO-8859-1" ??>
也可以在XML 声明之后包含一个编码声明作为一个单独的处理指令,但是一定要在所有字符数据之前:
<?xml encoding="ISO-8859-1"?>
表7-7 列出了目前大部分常用的字符集的正式名称,即出现在XML 编码属性中的名称。清单中没有的编码请参考由Internet
Assigned Numbers Authority(IANA)提供的正式清单,网址是:http://www.isi.edu/in-notes/iana/assignments/
character-sets。
XML 实用大全
第 177 页
表7-7 常用字符集名称
字符集名称 语言/国家
US-ASCII 英语
UTF-8 压缩Unicode
UTF-16 压缩UCS
ISO-10646-UCS-2 原始Unicode
ISO-10646-UCS-4 原始UCS
ISO-8859-1 Latin-1,西欧
ISO-8859-2 Latin-2,东欧
ISO-8859-3 Latin-3,南欧
ISO-8859-4 Latin-4,北欧
ISO-8859-5 ASCII 码加古斯拉夫语
ISO-8859-6 ASCII 码加阿拉伯语
 
中国航空网 www.aero.cn
航空翻译 www.aviation.cn
本文链接地址:XML实用大全(56)