维基百科----UTF-16

维基百科----UTF-16

维基百科,自由的百科全书

跳转到: 导航, 搜寻

UTF-16Unicode的其中一个使用方式。 UTF Unicode/UCS Transformation Format,即把Unicode转做某种格式的意思。

它定义于ISO/IEC 10646-1的附录Q,而RFC2781也定义了相似的做法。

Unicode基本多文种平面定义的字符(无论是拉丁字母、汉字或其它文字或符号),一律使用2字节储存。而在辅助平面定义的字符,会以代理对surrogate pair)的形式,以两个2字节的值来储存。

UTF-16比起UTF-8,好处在于大部分字符都以固定长度的字节 (2字节) 储存,但UTF-16却无法兼容于ASCII编码。

[编辑] UTF-16的编码模式

UTF-16的大尾序和小尾序储存形式都在用。一般来说,以Macintosh制作或储存的文字使用大尾序格式,以MicrosoftLinux制作或储存的文字使用小尾序格式。

为了弄清楚UTF-16文件的大小尾序,在UTF-16文件的开首,都会放置一个U+FEFF字符作为Byte Order Mark (UTF-16LE FF FE 代表,UTF-16BE FE FF 代表),以显示这个文本文件是以UTF-16编码,其中U+FEFF字符在UNICODE中代表的意义是ZERO WIDTH NO-BREAK SPACE,顾名思义,它是个没有宽度也没有断字的空白。

以下的例子有三个字符:「朱」(U+6731)、半角逗号 (U+002C)、「聿」(U+807F)

使用 UTF-16 编码的例子

编码名称

编码次序

编码

BOM

""

","

""

 

UTF-16LE

小尾序

 

31 67

2C 00

7F 80

 

UTF-16BE

大尾序

 

67 31

00 2C

80 7F

 

UTF-16

小尾序,包含BOM

FF FE

31 67

2C 00

7F 80

 

UTF-16

大尾序,包含BOM

FE FF

67 31

00 2C

80 7F

 

[编辑] UTF-16 UCS-2 的关系

UTF-16可看成是UCS-2父集。在没有辅助平面字符前,UTF-16UCS-2所指的是同一的意思。但当引入辅助平面字符后,就只称为UTF-16了。现在若有软件声称自己支持UCS-2编码,那其实是暗指它不能支持辅助平面字符的委婉语。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值