对于反向问号¿
我收到两个字节[-62] [ - 65]但我如何获得可读的utf-8或ASCII字符编码?TCP接收扩展的ASCII或utf-8字符
0
A
回答
3
那是该字符的UTF8代码。 inverted question mark是Unicode代码点191
,在UTF8中是0xc2:0xbf
。
您将它们视为带符号的字节。例如,-62
有符号是256-62
或194
unsigned - 这是十六进制0xc2
。
同样,-65
签名是256-65
或191
无符号 - 这是十六进制0xbf
。
如果要将UTF8序列转换为代码点,可以使用下表。
Range Encoding Binary value ----------------- -------- -------------------------- U+000000-U+00007f 0xxxxxxx 0xxxxxxx U+000080-U+0007ff 110yyyxx 00000yyy xxxxxxxx 10xxxxxx U+000800-U+00ffff 1110yyyy yyyyyyyy xxxxxxxx 10yyyyxx 10xxxxxx U+010000-U+10ffff 11110zzz 000zzzzz yyyyyyyy xxxxxxxx 10zzyyyy 10yyyyxx 10xxxxxx
例如,你的0xc2:0xbf
是二进制11000010 10111111
其中第二壳体相匹配:
11000010 10111111 ||||| |||||| |||\\ ////// ||| |||||||| 00000000 10111111 -> 0x00bf -> 191
1
那些2个字节可能是 UTF-8
为ASCII你需要一个特定的代码页。
什么是'可读'字符编码?
+0
ASCII没有代码页。它是7位。 – 2011-02-08 19:51:41
1
相关问题
- 1. 显示扩展ASCII字符
- 2. Vim和ASCII扩展字符?
- 3. 将扩展ascii转换为utf8
- 4. Console.Write() - 显示扩展的ascii字符?
- 5. Code :: Blocks中的扩展Ascii字符C++
- 6. HTML中的IBM扩展ASCII字符
- 7. 使用AutoHotKey发送扩展ASCII字符
- 8. 在Ruby中显示扩展ASCII字符
- 9. Oracle ASCII字符集 - .Net扩展
- 10. C:错误的字符为ASCII的转换(从扩展ASCII表字符)
- 11. 通过TCP接收Unicode字符
- 12. “的std :: ISDIGIT”崩溃的几个扩展ASCII字符数
- 13. 转换扩展的ASCII字符到Latin1的
- 14. 扩展的ASCII问题
- 15. 如何通过C++通过JNI传递扩展的ASCII字符
- 16. 只需要过滤扩展的ASCII字符,如Ä,å,à等
- 17. 在网页/母版页中扩展ASCII字符的问题
- 18. 编码为单字节扩展ASCII值
- 19. 如何将utf8字符串转换为ascii字符串?
- 20. 如何从T-SQL中的字符串中删除扩展的ASCII字符?
- 21. TCP套接字网络的可用PHP扩展是什么?
- 22. TCP中的多重发送()或接收()
- 23. python-scrapinghub,ascii/utf8?
- 24. 将扩展ASCII字符转换为十六进制或纯文本
- 25. 我怎么添加字符串扩展将字符串转换为UTF8
- 26. 如何使用Const Char *打印ASCII扩展字符?
- 27. 使用扩展ascii字符为维基媒体API
- 28. 将二进制字符串反之亦然:扩展ASCII
- 29. 在印刷阵列中使用扩展ASCII字符
- 30. 如何从扩展ascii号码获得一个字符
“¿” 不是ASCII编码的一部分。 – 2011-03-20 07:14:17