Haskell - 如何在二进制文件中添加长度为bytes的字节串?

Joe*_*and 1 binary haskell bytestring

我处于不幸的情况,我需要直接在Haskell中与Java套接字API连接.通过线路发送Java字符串的方式是将它们的长度添加到字符串的开头.

例如:

\0\0\0\xBHello World
Run Code Online (Sandbox Code Playgroud)

是字符串"Hello World"

我可以得到ByteString没有问题的长度,但作为一个Int.我可以Word32使用Blaze Builder向ByteString 添加一个,但我找不到一种方便的方法来转换IntWord32.有没有一些方便的方法我找不到这样做?

谢谢.

Fed*_*lev 5

您可以使用fromIntegral函数转换任何整数类型.

  • 另外:不要担心性能 - 它应该是专业的 (3认同)