【问题标题】:interactive binary decoder to structs交互式二进制解码器到结构
【发布时间】:2010-11-15 16:04:40
【问题描述】:

我看了一些,但找不到我认为可能已经创建的东西。

我正在寻找一个可以读取二进制文件的应用程序,允许以某种方式输入预期的模式/规则类型(例如一组消息,每个消息都是标头 + 数据),然后反序列化根据模式/规则将数据转换为文本格式(例如,二进制文件是一组 M 消息,其标头包含结构类型和结构的序列化占用的字节数,直接序列化到文件中)。

具体来说,假设我提前知道我将有一个文件,其中包含一系列序列化的 C 结构(或 C++ 类),它们都由一个标头前置,指示在接下来的 N 个字节中序列化哪个结构(其中N 包含在标题中)。

我知道如何编写 C/C++ 代码来遍历和反序列化数据(前提是我提前知道所有类型),但我想知道是否存在某种类型的应用程序可以帮助您简化此过程提前不完全确定格式/结构(十六进制编辑器除外)。如果存在,您可以看到更改结构/规则/模式的动态效果的图形将是最佳的。

【问题讨论】:

    标签: c++ c serialization binary deserialization


    【解决方案1】:

    boost::serialization 已经做了与此非常相似的事情,而不必在细节上弄脏你的手。它支持多种归档格式,包括XML、文本和二进制文件,扩展性非常好,可以应对智能指针、容器等。

    【讨论】:

    • 我不确定我是否理解这与我所问的内容有什么关系。该库抽象了一些序列化/反序列化细节,但我无法告诉它是交互式的。我知道如何反序列化我期待的消息。我想知道的是,在 hexeditor 之上是否有一个现有的工具可以帮助以交互方式反序列化 UNKNOWN 格式的任务。
    猜你喜欢
    • 1970-01-01
    • 2020-05-02
    • 2011-07-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-14
    • 2017-10-03
    相关资源
    最近更新 更多