方法介紹

    protobuf的介紹在這里就不詳細介紹了,主要是俺也是剛接觸,感興趣的同學可以去搜索相關博客或者直接去看源碼以及google的官方文檔(官方文檔表示很吃力)或者去這個網(wǎng)站:https://developers.google.com/protocol-buffers/docs/overview查看相應內容,這里面內容很全面,可以很方面的查詢各個函數(shù)的使用方法以及功能。本篇文章主要介紹一下本人最近做的一個protobuf轉json的小工具,下面進行拆分講解,完整的代碼在:git@github.com:chengfeiGitHub/P-bToJson.git。

    protobuf自帶一個MessageToJson()的函數(shù)可以將對應的消息轉換成json,一般情況下該函數(shù)可以滿足轉換需求。但是,最近項目的要求使用MessageToJson()無法實現(xiàn),主要要求是:

  1. 選擇特定的messge進行轉換(主要是提供包含需求字段號的set或者vector,根據(jù)提供的字段號進行轉換);

  2. 對于Enum類型的消息,可以選擇顯示枚舉名或者枚舉值;

  3. 對于字段值為0的字段,可以選擇顯示或者不顯示.

    主要有這三個要求,對于功能2、3現(xiàn)在最新的protobuf應該是支持的,但是沒有功能1的實現(xiàn)方式,所以只好自己寫一個小工具。

    說明:本工具由C++編寫完成

延伸閱讀

學習是年輕人改變自己的最好方式-Java培訓,做最負責任的教育,學習改變命運,軟件學習,再就業(yè),大學生如何就業(yè),幫大學生找到好工作,lphotoshop培訓,電腦培訓,電腦維修培訓,移動軟件開發(fā)培訓,網(wǎng)站設計培訓,網(wǎng)站建設培訓學習是年輕人改變自己的最好方式