Closed. This question needs to be more focused。它当前不接受答案。












想改善这个问题吗?更新问题,使其仅关注editing this post一个问题。

2年前关闭。



Improve this question




以前,我曾建议过attoparsec用于解析复杂的二进制文件格式。虽然可以找到本质上是基于文本的attoparsec解析HTTP的示例,但找不到解析实际二进制文件的示例,例如TCP数据包,图像文件或mp3。有人可以使用attoparsec发布某些代码或指向某些代码的指针吗?

最佳答案

attoparsec解析二进制格式的示例很少或没有,因为parsec样式的组合器解析主要用于文本格式,而不是二进制格式(尽管没有充分的理由)。

有关直接二进制分析,请参见Data.Binary,示例包括:

  • haskell-amqp
  • haskell-bencode
  • haskell-ieee
  • haskell-dbus
  • haskell-elf
  • haskell-uuid

  • 以及《真实世界》 Haskell中的示例。

    目前,attoparsec的主要示例是RFC2616解析器(HTTP)。
  • http://bitbucket.org/bos/attoparsec/src/tip/examples/Parsec_RFC2616.hs
  • 10-08 00:20