快速解析和打印Google Protobuffer的方法

时间:2016-05-18 15:04:58

标签: c++ qt protocol-buffers

我收到Google Protobuffer并将其保存在QByteArray中。 现在我用

将收到的数据解析到相应的protobuff中
::proto::dummy * protobuffer; 
QByteArray * ByteArray;

//receive Data
...

protobuffer->ParseFromArray(ByteArray->data(), ByteArray->size);
if(protobuffer->has_XY) /* print it to Log */; 

由于我的protobuffer有几个数据字段,我想避免在上面的方法中显示每个条目。有没有快速的方法来打印protobuffer的所有信息?

1 个答案:

答案 0 :(得分:2)

如果您只想获得协议缓冲区的人类可读表示,可以调用其DebugString()(或ShortDebugString())方法。您可以在Message课程文档here中了解有关这些方法的更多信息。