2010-01-03 95 views
5

如果沒有消息定義,我必須將protobuf消息的消息結構傳輸給我。使用UnknownFieldSet方法,我能得到消息的字符串表示如下:如何在沒有定義的情況下獲得Google Protobuf消息的結構

1: "a" 
2: { 
    3:"b" 
    4:"c" 
} 

並現場2代表什麼數據結構?使用UnknownFieldSet.Field.getGroupList我能夠得到字段3和4的內容,這是否意味着字段2具有「不推薦使用」的組結構?

回答

3

如果您發佈了原始二進制數據,我們可以告訴您 - 或者您可以查看protocol buffer encoding documentation。如果您看到線路類型爲3的字段,則表示一個組。

我對UnknownFieldSet API不太熟悉,因爲我可能應該是這樣,但聽起來好像你在處理一個組。

另一方面,我期望組的大部分用途都是Google的內部 - 這些數據來自哪裏?誠然,有什麼可停止人使用過時的組格式,而不是嵌入郵件的,但我會希望那幾個都是這樣做的......

是否有任何理由,你不能要求爲.proto文件涉及?雖然一些信息肯定可以從協議緩衝區收集沒有他們的定義,他們真的被設計用於兩端知道消息格式 - 雖然可能不同的版本。

+0

謝謝,它確實是一個羣體。 – dqminh 2010-01-05 01:52:53

相關問題