2015-08-29 48 views
3

我無法將用戶輸入的十六進制字符串(即「1F436」)轉換爲可以使用的Unicode字符。Swift:用戶輸入的十六進制字符串爲Unicode字符

通過閱讀Swift文檔,我學習瞭如何使用'print(\ u {1F436})'打印Unicode字符以及如何使用for-in循環找出字符串中Unicode字符的十進制值。

但是,我該如何去從包含它的十六進制數的字符串中創建一個unicode字符變量?

回答

3

很簡單,就像這樣:

let inputText = "1F436" 
let character = Int(inputText, radix: 16).map{ Character(UnicodeScalar($0)) } 

character是一個可選的Character取決於數量是否被成功解析

符號「\∪{1F436}」,纔可能從使用程序員,因爲它會在編譯時轉換爲實際字符

+0

這很好。謝謝! –

相關問題