parsing - F# 中是否有任何已知的解析器组合库可以解析二进制(非文本)文件?

标签 parsing f# binary parser-combinators fparsec

我熟悉 fparsec 的一些基础知识,但它似乎面向文本文件或流。

是否有任何其他 F# 库可以有效地解析二进制文件?或者可以轻松修改 fparsec 以有效处理二进制流?

最佳答案

您可能对pickler 组合器感兴趣。它们有点像解析器组合器,但更侧重于更简单的二进制格式(pickler 允许您生成二进制数据,而 unpickler 可以解析它们)。有一个quite readable article about the idea (PDF) 由 Andrew Kennedy(度量单位的作者)撰写。

我自己对这些没有太多经验,但我刚刚意识到它可能与您有关。这个想法在 F# 编译器中用于生成一些二进制资源(如存储在资源中的引用)。虽然,我不确定 F# compiler implementation有什么好处(这是 F# 编译器早期的那些东西之一)。

关于parsing - F# 中是否有任何已知的解析器组合库可以解析二进制(非文本)文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7800586/

相关文章:

f# - 假的 : CreateCSharpAssemblyInfo has difficulties with German umlauts

f# - %A格式与非公开歧视工会的奇怪行为

c - float 转换 - 二进制 -> 十进制

python - 新手代码: Converting individual numbers from an input into seperate values in binary

python - 在 Beautiful Soup 中找不到 <span> 标签内的元素

使用 FParsec 解析日期和时间

winforms - F# 和 winform 控件问题

binary - 设计(二进制)文件格式时有哪些要点?

sql - Oracle SQL解析器

java - 将数据从文件加载到 Vector 结构