我的[[Int]]
值为[[0,1,1,0,0,0,0,1],[0,1,1,0,0,0,1,0]]
。
我需要将其转换为ascii表示,例如“ab”。
有人可以给我一些关于如何在Haskell中做这件事的指示吗?
答案 0 :(得分:1)
你可以:
Data.Char
chr
撰写该功能
map
应用这些组合函数(将二进制转换为基数10然后转换为字符)以映射二进制代表列表并将其转换为字符列表 - 这是一个字符串。 答案 1 :(得分:1)
您可以对列表执行foldl
计算其整数值,然后使用chr
将整数解释为unicode代码点(其中ascii是子集)。
λ> import Data.Char (chr)
λ> fmap (chr . foldl (\x y -> 2*x + y) 0) [[0,1,1,0,0,0,0,1],[0,1,1,0,0,0,1,0]]
"ab"