我有一个String
表示Haskell中的unicode字符,比如"\\x00a0"
,我想将其转换为Char
(在这种情况下为'\ x00a0')。
我上次失败的尝试是将read
作为Int,然后使用Data.Char.chr
转换回Char
。它适用于八进制文字"\\xxx"
,但不适用于Unicode。
有人能指点我吗?
答案 0 :(得分:5)
Data.Char
包含readLitChar
,它将适用于任何Haskell字符串转义序列(当然除了间隙和分隔符):
Prelude Data.Char> readLitChar "\\x00a0"
[('\160',"")]