對於反向問號¿
我收到兩個字節[-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