![]() |
1
2
是的,我们可以,那是UTF-32。 问题是UTF-32浪费了很多空间。如果文本包含大量的欧洲/希伯来语/阿拉伯语文本,使用UTF-8时,每个代码点只需要1到2个字节,但是使用UTF-32时,每个代码点需要4个字节。
如果将整数值存储为可变大小,例如0~255使用1字节,256~65535使用2字节等,则会出现歧义问题,例如should
|
![]() |
2
1
你到底要如何保存这些代码点?有些代码点适合一个字节,有些需要3个字节。每个代码点使用4个字节吗?当您查看字节流时,如何知道一个代码点在哪里结束,另一个代码点在哪里开始?UTF-8(和其他编码)给出了答案。 |
![]() |
3
0
首先,有一种方法可以将它们存储为原始代码点。那是UTF-32或UCS-4。每个字符将始终是四个字节,并且存储每个未修改的码点。 然而,使用UTF-8等其他设备的原因包括:
|