2017-12-08 16 views
0

OK、私はprotobuf形式のデータファイルを持っています。また、ファイルのスキーマを記述する.protoファイルもあります。Protobuf data + .proto - > JSON

ファイルから既知のメッセージを抽出するための豊富なライブラリが見つかりました。いいね。

しかし、私は実際にファイルの構造を知らない。ファイルにはトップレベルの「メッセージ」があるかもしれません。本当にやりたいことは、ファイルを調べてその中の内容をダンプすることだけです。これが求めるにはあまりにも多くのです

私のような何かを行うことができますコマンドを持っているのが大好きですか! Googleは明らかな答えを出していないので、私がまだ手に入れないprotobufsについては微妙なものがあるかもしれない。

アイデア?

答えて

0

私はプロトコルバッファーグーグルグループの有益な人たちに感謝します。

答えは "申し訳ありません"です。

まあ、閉じる。問題は、データファイル内の「ルート」メッセージが何であるかを知ることです。私の場合は明らかではなかったので、ファイルのダンプがルートを漏らすことを望んでいました。ファイル自体はフィールドやメッセージの内容を知らないため、適切な.protoファイルがあれば抽出できるデータがあります。

私の場合、ルートが何であるか疑問を抱いていたので、すべてのフィールドがファイル内にあることを知っているメッセージを見つけるまで試行錯誤しました。

.protoファイルにルートメッセージの内容が示されているといいでしょう。この場合、この変換を行うツールはすでに存在するはずです。

こちらがお役に立てば幸いです。

0

あなたが提起した問題を解決するためのパスです。このツールを実行するコマンドラインの例を次に示します。現在

$ ./proto2json.sh --schema=test/test.proto \ 
    --root=Recording --in=test/test.pb --out=out.json 

https://github.com/rohitsaboo/proto2json

、ツールは、他のファイルからのプロトに依存しないプロトコルバッファ・スキーマをサポートしています。しかし、それを拡張して "dependency_schemas"をサポートすることは可能であるべきです。