跳转到内容
主菜单
主菜单
移至侧栏
隐藏
导航
首页
最近更改
随机页面
MediaWiki帮助
GSXAB的知识库
搜索
搜索
外观
登录
个人工具
登录
Advertising:
查看“︁UTF-32”︁的源代码
页面
讨论
简体中文
阅读
查看源代码
查看历史
工具
工具
移至侧栏
隐藏
操作
阅读
查看源代码
查看历史
刷新
常规
链入页面
相关更改
特殊页面
页面信息
外观
移至侧栏
隐藏
←
UTF-32
因为以下原因,您没有权限编辑该页面:
您请求的操作仅限属于该用户组的用户执行:
用户
您可以查看和复制此页面的源代码。
[[分类:字符编码实例]] [[分类: ISO 标准]] {{InfoBox |name=UTF-32 |eng_name=UTF-32 |aliases=UCS-4 }} {{#seo: |keywords=UTF-32 |description=介绍了 Unicode 传输格式中的格式UTF-32。UTF-32以四字节长度为单位表示Unicode字符。 |modified_time={{REVISIONYEAR}}-{{REVISIONMONTH}}-{{REVISIONDAY2}} |published_time=2025-09-12 }} '''UTF-32''' 是一个将 [[Unicode]] 字符集编码为[[四字节]]流的[[字符编码]]方法。 UTF 即 Unicode Transformation Format , Unicode 传输格式。 这一编码是定长编码,无论哪一个 Unicode 码位都会被编码为一个四字节。尽管现代 Unicode 范围仅需要 21 位,但是按惯例被编码为 32 位,其中高 11 位永远为 0 。 由于历史原因, UTF-32 有时也会被称为 UCS-4 ,此时也可以认为其范围为 0 到 {{Hex|7FFFFFFF}} 。 == 编码规则 == UTF-32 中,全部的二进制表示都是以四字节为单位的。每个四字节所对应的二进制数值就是对应码位上的字符。 超过 <code>U+10FFFF</code> 的范围,以及[[UTF-16|代理对]]区块 <code>U+D800-DFFF</code> 的范围均无效。 === 特征 === UTF-32 是定长编码,不涉及解析时同步位置错误的问题,需要指定其中第几个字符、计算字符串中字符数量时可以不需要遍历判断字符情况。 由于大量范围都是无效码位,而且正常环境中出现的字符基本处在 BMP 内, UTF-32 编码的文件实际上非常稀疏,几乎所有的四字节中都有一对字节是全 0 的。 === 错误处理 === 由于四字节和码位是一一对应关系,只要不出现无效码位,没有其他与机制相关的错误。默认情况下,如果出现非正常码位,以及半个代理对单独出现的情况,大多数编解码实现中还是会使用与其对应的字符而不做特殊处理。 === BOM === UTF-32 是以四字节为单位读写的,由于大多数储存传输协议中基本单位都是字节,因此存在[[字节序]]问题。尽管传输中极少使用这么额外浪费空间的编码方式,其也存在字节序标记规则,与 UTF-16 相同。 如果允许指定字节序,大端(big-endian, BE)和小端(small-endian, LE)的编码分别被称为 UTF-32BE 和 UTF-32LE 。在编码类型中指定字节序时,不要求带有字节序标记。 若字节序无法指定,默认需要一个字节序标记 {{UnicodeCodePoint|U+FEFF|Byte Order Mark}} 在流头部来确定字节序。在 Unicode 中, <code>U+FEFF</code> 是保留给字节序的功能字符,而 <code>U+FFFE0000</code> 根本不在范围内,因此只要查看前四个字节构成其中的哪一个就能确认当前文档中的字节序。 若字节序未指定的同时,又缺少字节序标记 BOM ,也就是前四个字节既不是 <code>0x00.00.FE.FF</code> 也不是 <code>0xFF.FE.00.00</code> ,此时 RFC 2781 推荐将大端作为默认编码。但是由于 Windows 等环境默认小端,不少实现中也会将小端作为默认的字节序。 {{常见字符编码}} == 参考资料 == https://en.wikipedia.org/wiki/UTF-32
返回
UTF-32
。
Advertising: