像是:靠ོ༵ 之类的一些特殊字,以编码的角度,该如何理解?
最近在网路上看到一些奇怪的中文字,例如:
ྋ试ོ༵试ོ༵你ོ༵的ོ༵眼ོ༵力ོ༵ 请找ོ༵到ོ༵一ོ༵帆ོ༵风顺靠ོ༵靠ོ༵靠ོ༵
我试着将 靠ོ༵ 这个字找了线上的转换器 转成 utf-8
utf-8 显示结果如下
\xe9\x9d\xa0\xe0\xbd\xbc\xe0\xbc\xb5
其中 \x 的部分 我当作是 utf-8 的表达,但我查不到这是哪裡的规范?
其中 e9 9d a0 ... 我认为是 16 进制的表示,e9 将会佔 1 个 字节(byte) 的大小
查看 utf-8 定义后发现 :
通常1个字节可以存入一个ASCII码,2个字节可以存放一个汉字国标码。
也就是说 上面的这个字 用到了 e9 9d a0 e0 bd bc e0 bc b5 共 9 个字节(byte),應該不屬於中文字。
请问这样我能知道它这个字,是属于哪一国语言吗? 或者是在 utf-8 的定义中,这个字在哪个范围内呢?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
取 Unicode 转二进制代入 UTF-8 xxx 部分
看过一篇相关文章
首先回答问题本身:
“靠ོ༵”这不是一个整体的汉字,而是一个普通的汉字“靠”和紧随其后两个特殊字符
ོ
和༵
的组合。(复制到记事本等只支持纯文本的编辑器里你就可以明显发现这一点)两个特殊字符我也不清楚是什么,想知道详细可以去查对应编码范围区域。
猜测是一些修饰字符,某些外语里需要用到。
其次纠正问题本身一个错误:
utf-8是unicode的一种编码方式,而汉字国标码是GB系列的编码(GB2312、GBK、GB18030等)。
这两者是两种东西,不会有所说的“查看utf-8定义……存放一个汉字国标码”的情况。2个字节放一个汉字的说法也不准确。
原始的unicode码,所有字符都是2个字节,包括汉字。
utf-8中,所有字符长度不定(1-4个字节),一个汉字用3个字节。
国标码的GB2312和GBK中,所有字符都是2个字节,包括汉字。
国标码的GB18030中,每个字符是1/2/4个字节