Подтвердить что ты не робот

С++ Protobuf в/из конверсии JSON

Кто-нибудь знаком со стабильным С++-решением (библиотека, фрагмент кода и т.д.), который преобразует сообщения protobuf в/из JSON?

4b9b3361

Ответ 1

Это лучше ИМО: https://github.com/shramov/json2pb

он выполняет преобразование в обоих направлениях и обрабатывает расширения

Ответ 2

Я сделал загрузочную реализацию парсера JSON для генерируемых типов protobuf, используя механизм его отражения и адаптировав анализ, который я сделал ранее для сгенерированных типов CORBA IDL.

Вы можете найти его на 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

pbjson - это еще один, который построен на quickjson, возможно, быстрее.

Ответ 4

pb2json - это еще одна библиотека С++, которая может это сделать.