web-dev-qa-db-ja.com

JSON変換との間のC ++ Protobuf

ProtobufメッセージをJSONとの間で変換する安定したC++ソリューション(ライブラリ、コードスニペットなど)に精通している人はいますか?

18
Zaur Nasibov

これはより良いIMOです: https://github.com/shramov/json2pb

両方向の変換を行い、拡張機能を処理します

6
haberlerm

pbjson は、rapidjsonに基づいて構築された、おそらくより高速な別のものです。

3
yinqiwen

bootstrap protobufで生成された型のJSONパーサーの実装を作成し、そのリフレクションメカニズムを使用して、以前に作成した解析をCORBAIDLで生成された型に適合させました。

あなたはそれを見つけることができます http://corbasim.googlecode.com/svn/trunk/protobuf2json_exported.Zip

このようにして、protobufで定義されたメッセージごとに、次のようにしてそのインスタンスを解析できます。

Foo foo;

const std::string json_foo = "{\"text\": \"Hello world\"}";

protobuf2json::json::parse(foo, json_foo);

これは単なる初期実装であり、文字列フィールドをサポートするだけですが、あらゆる種類のフィールドを簡単に実装できます。

3
Andrés Senac

pb2json は、これを実行できる別のC++ライブラリです。

1
Mike Ohlsen