Joh*_*iss 15 haskell bytestring
我们想以特定的二进制格式序列化数据.我们Data.ByteString在内部使用s.
所以,问题是:如何将我们使用的不同数据类型转换为ByteString.因为String我们没有问题,我们可以使用encodeLazyByteString UTF8 "string".但我们也希望将Integers 转换为ByteStrings(big-endian).
有谁知道如何做和/或有任何使用Haskell和二进制格式的好技巧?
谢谢!
Don*_*art 18
Data.Binary的完美工作:
Prelude> :m + Data.Binary
Prelude Data.Binary> encode (pi :: Double)
Chunk "\SOH\SOH\NUL\NUL\NUL\NUL\NUL\NUL\NUL\a\CAN-DT\251!\EM\255\255\255\255\255\255\255\205" Empty
Prelude Data.Binary> encode (42 :: Integer)
Chunk "\NUL\NUL\NUL\NUL*" Empty
Run Code Online (Sandbox Code Playgroud)
产生惰性字节串,当然可以转换为严格的字节串.谷物包提供了大致相同的接口,但仅产生严格的字节串(因此没有无限的编码流).