2

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

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

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

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

4

1 回答 1

1

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

于 2010-11-15T16:07:32.673 回答