GHC:显示unicode字符

时间:2014-01-26 15:31:38

标签: haskell unicode ghc

关于管理.exe文件制作中unicode字符的第一个问题,这也是GHC中的一个错误?

> print "Frère"
"Fr\233re"

2 个答案:

答案 0 :(得分:11)

print x相当于putStrLn (show x),其中showShow类的类型转换为字符串表示形式。

在您的情况下,x已经具有String类型。有人可能会认为show的String实现只会返回其参数不变,但实际上它会将其转换为ASCII字符串文字标记,其语法与Haskell源代码中使用的相同。这是通过用引号括起来并通过转义“特殊”字符(基本上是你键盘上没有的字符)来完成的。

所以,这不是一个错误,而是print的预期行为。如果您想直接输出字符串,请改用putStrLn

答案 1 :(得分:1)

尝试

> putStrLn "Frère"
Frère