我有许多 protobuf 文件,但没有 .proto 模式文件!
cat myfile.pbuf | protoc --decode_raw > outputfile.txt
使用上面的命令,我能够将文件解码为有点可读的 protobuf 格式(谢谢):
1: 1
2: ""
2 {
1: 0x40133f7ced916873
2: 0x3ff70e5604189375
3: 0xbfd23d70a3d70a3d
4: 0x3fb999999999999a
}
2 {
1: 0x4022e7ef9db22d0e
2: 0x4006ed916872b021
3: 0xbfe1cac083126e98
4: 0x3fc999999999999a
}
2 {
1: 0x402bdcac083126e9
2: 0x40111374bc6a7efa
3: 0xbfe9fbe76c8b4396
4: 0x3fd3333333333333
}
2 {
1: 0x40324147ae147ae1
2: 0x401696872b020c4a
3: 0xbff0e147ae147ae1
4: 0x3fd999999999999a
}
...
我知道没有模式我无法知道这些值的含义,但我想知道是否还有其他方法可以推断出这种奇怪之处!protobuf 文档似乎表明数字数据以 2 或 4 字节块的形式提供,我可以轻松地将其转换为整数或浮点数。
我的数据不适合这种格式,但我知道它是数字数据!我从未见过带有十六进制x
表示法的 protobuf 文件,并且有 16 个字节(对于单个数字来说太多了!)。
这可能是什么数据类型,是否可以在没有模式的情况下进行解码和进一步解码,是否1, 2, 3, 4
有用或重要?