将Ints列表写入二进制文件的最简单方法是什么



我的Haskell现在有点生疏了。我有一个要写入文件的Int列表。我看到提到了使用字节串构建器等来实现这一点的方法,但找不到一个简单的例子。有人能帮我完成这项简单的任务而不必研究一堆图书馆吗?谢谢

只需使用binary:

import Data.Binary
import qualified Data.ByteString.Lazy as B
writeIntsToFile :: FilePath -> [Int] -> IO ()
writeIntsToFile fp is = B.writeFile fp ser
  where ser = encode is

请注意,这使用了list的默认编码和Int的默认编码。因此,您的文件格式将是一个64位字段,指示元素的数量,然后是每个Int的许多64位值。所有这些值都以big-endian表示。

最新更新