mdp*_*ura 1 unicode encoding utf-8
UTF-8是可变长度编码.如果一个字符可以使用单个字节表示,例如:A(英文字母A),UTF-8将用单个字节对其进行编码.如果它需要两个字节,它将使用两个字节,依此类推.现在考虑我编码A(01000001)あ(11100011 10000001 10000010).这将作为连续空间存储在内存中:01000001 11100011 10000001 10000010.我的问题是在解码时,编辑器如何知道第一个字节仅用于第一个字符,接下来的3个字节用于第二个字符?
**它可能最终解码4个字符,其中每个字节被视为字符,我的意思是这里的区别在哪里.
UTF-8编码告诉程序每个编码的代码点有多少字节.任何开始字节0xxxxxxx是一个ASCII字符从0到127的任何开始字节10xxxxxx是一个延续字节,并且可以在起始字节后只发生:110xxxxx,1110xxxx或11110xxx指定的下一个字节,两个字节或三个字节是延续字节,分别.
如果没有正确数量的连续字节,或者连续字节出现在错误的位置,则字符串无效UTF-8.某些程序利用此功能尝试自动检测编码.
| 归档时间: |
|
| 查看次数: |
63 次 |
| 最近记录: |