如何在haskell中将字符串转换为整数?

时间:2014-03-08 22:26:56

标签: string haskell integer

我正在为一个类或我的类实现RSA加密系统,并且为了能够实现它,我们显然需要将字符串转换为整数然后反过来。使用基本级别的haskell可以有人向我解释如何做到这一点。我有一个函数可以告诉我字符代码的最大长度也可以考虑。

谢谢大家。

2 个答案:

答案 0 :(得分:4)

我不确定您需要什么,但如果您只想获得String的数字表示,则可以使用Data.Char.ordChar转换为Int Data.Char.chr。然后,您可以使用Int将每个Char转换回import Data.Char (ord, chr) stringsToInts :: String -> [Int] stringToInts = map ord intsToString :: [Int] -> String intsToString = map chr

使用:

Prelude Data.Char> let ints = stringsToInts "Hello world!"
Prelude Data.Char> ints
[72,101,108,108,111,32,119,111,114,108,100,33]
Prelude Data.Char> intsToString ints
"Hello world!"
你可以:

ints

如果您需要(并进一步修改intsToString),您可以进一步处理列表{{1}}。)

答案 1 :(得分:0)

您还可以使用ByteString模块:将简单String转换为ByteString pack,然后直接使用它作为字节数组({{ 1}},如果确切的话。)