回答
你不能將它之所以只是它不是有效的UTF-8
。
4> io:format("~.2B~n", [16#80]).
10000000
ok
5> io:format("~.2B~n", [16#94]).
10010100
ok
詳見上this site的說明(我顯示你的二進制文件,所以你可以看到二進制模式)。但歸結起來,80h
是UTF-8
中的一個無效起始值。
我想你可能想要的東西從UTF-8
二進制一個Unicode碼點,像這樣:
unicode:characters_to_list(<<"I am a valid utf8 binary">>, utf8).
順便說一句代碼點2014
是this字符是在UTF-8
編碼0xDF 0x9E
。
我對這個問題有點混淆。 (對不起)... ...
在erlang十六進制數字的前綴是16#所以如果你有16#80或16#94數字,你想將它轉換爲十進制值,你可以使用integer_to_list(16#AF8 ,10)
很抱歉,這個問題的提法很晚,很晚。那麼,我知道基數的16次轉換。但問題是這不是16位。所以FX。當我做integer_to_list(16#8094,10)。它返回32916.雖然我正在尋找的價值是2014. –
你如何得到2014?給定十六進制的十進制值應該是128和148.嘗試K =「\ x80 \ x94」。 –
您可以使用二進制utf8
轉換。雖然它看起來像你的數字不準確:
2> A = <<16#80, 16#94>>.
<<128,148>>
3> <<B/utf8>> = A.
** exception error: no match of right hand side value <<128,148>>
改造工作是雙向的,所以這是我所期待入手:
5> <<2014/utf8>>.
<<223,158>>
- 1. 將十六進制轉換爲二進制到十六進制?
- 2. 十六進制,八進制,二進制到十進制(C++)
- 3. 二進制,八進制,十六進制到十進制程序
- 4. 從十六進制到十進制,二進制到十進制和八進制到十進制程序C++
- 5. C#System.OverflowException二進制到十進制和十六進制轉換
- 6. UTF8十六進制代碼點到十進制不匹配
- 7. 十六進制到二進制轉換
- 8. Python二進制到多十六進制
- 9. 大十六進制到二進制
- 10. 轉換十六進制到二進制
- 11. 二進制到十六進制轉換
- 12. Javascript十進制到十六進制
- 13. 轉換十六進制到十進制
- 14. 十六進制串&十六進制
- 15. 將十進制轉換爲十六進制和十六進制
- 16. 將十進制轉換爲十六進制/二進制
- 17. 十六進制爲二進制和十進制在matlab中
- 18. 十進制/十六進制/二進制轉換
- 19. C# - UTF8⇔二進制,十六進制和Base 64轉換器
- 20. 十六進制到十二進制轉換(帶sed的管道)
- 21. 十六進制轉換爲二進制
- 22. PHP十六進制和二進制
- 23. 十六進制轉換爲二進制
- 24. 十六進制
- 25. 十六進制
- 26. 十六進制
- 27. 十進制到二進制(二進制)
- 28. 二進制到十進制
- 29. 十六進制爲十進制
- 30. 十六進制和十進制轉換
你的意思是你想要一個UTF-8編碼二進制碼的unicode codepoint嗎? –