如何打开协议缓冲文件

时间:2018-02-05 08:24:04

标签: protocol-buffers snappy

例如,我有以snappy格式压缩的协议缓冲区文件

file.pbuf.sn

如何查看文件的内容?建议哪些程序使用协议缓冲区文件?

1 个答案:

答案 0 :(得分:2)

这里有两个独立的步骤:

  • un-snappy文件容器
  • 处理大概是protobuf的内容

如果您尝试通过代码执行此操作,那么显然每个都将取决于您的目标语言/平台/等。据推测,“snappy”工具可以从谷歌那里获得(他创造了“snappy”,IIRC)。

有了内容后,它取决于它是.proto架构,二进制数据内容,JSON数据内容还是某种组合。如果您有数据模式,则通过“protoc”或您选择的语言/平台特定工具运行它,以获取与模式匹配的生成代码。然后,您可以通过生成的代码运行二进制或JASON数据,以获取填充的对象模型。

如果您没有架构:如果它是JSON,您应该能够通过名称了解数据。只需通过您选择的JSON工具运行它

如果它是没有架构的二进制数据,事情就更难了。 Protobuf数据不包含名称,并且可以以多种方式编码相同的值(因此:相同的字节可以来自多个源值)。因此,您必须对每个字段的含义进行反向工程。 “Protoc”具有无模式解码模式,可能对此有所帮助,https://protogen.marcgravell.com/decode

也是如此