首页
社区
课程
招聘
[已解决] [求助]C#ProtoBuf反序列化求助 50.00雪花
发表于: 2018-8-16 05:25 5412

[已解决] [求助]C#ProtoBuf反序列化求助 50.00雪花

2018-8-16 05:25
5412
如下图所示,数据:0A1108AC0210641801289CE486EED32C30C45E121D08C45E1218E5B7B2E59CA8E585B6E4BB96E59CB0E696B9E799BBE5BD95乃是两个ProtoBuf对象。

其中对象1为:0A1108AC0210641801289CE486EED32C30C45E

对象2为:121D08C45E1218E5B7B2E59CA8E585B6E4BB96E59CB0E696B9E799BBE5BD95

然后我查看了下ProtoBuf的数据解释:https://blog.csdn.net/mynameislu/article/details/78645880


然后根据实际操作,得出对象1的0A和对象2的12为index,对象1的11和对象2的1D为字段长度

实际操作如下图


由此可见,C#的ProtoBuf-Net是不能自己解析index和字段长度的。

所以我使用对象1:08AC0210641801289CE486EED32C30C45E
对象2:08C45E1218E5B7B2E59CA8E585B6E4BB96E59CB0E696B9E799BBE5BD95
则畅通无阻


现在的问题是,如何能让C#解析多个对象,就是解析原返回数据。


[课程]Linux pwn 探索篇!

收藏
免费 0
支持
分享
最新回复 (4)
雪    币: 2
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
反序列化针对你定义的.proto结构体,这样的多个加个循坏遍历以下吧,索引加长度,index按照字符串的

长度的解析看看proto源码中CodedInputStream::ReadVarint32
2018-8-16 10:21
0
雪    币: 962
活跃值: (1681)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3

看错了
最后于 2018-8-16 14:36 被loqich编辑 ,原因:
2018-8-16 14:33
0
雪    币: 3622
活跃值: (2559)
能力值: ( LV6,RANK:83 )
在线值:
发帖
回帖
粉丝
4
直接用工具转不行吗?
2018-8-16 15:30
0
雪    币:
活跃值: (153)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
wxstslj 反序列化针对你定义的.proto结构体,这样的多个加个循坏遍历以下吧,索引加长度,index按照字符串的长度的解析看看proto源码中CodedInputStream::ReadVarint32
非常感谢
2018-8-16 18:42
0
游客
登录 | 注册 方可回帖
返回
//