@vasiliyshaidiuk

Как спарсить array json библиотекой JsonCpp?

Доброго времени суток. Помогите пожалуйста с решением маленькой проблемы..
Есть такой обьект json:
json
{
	"ts" : 1618405055,
	"updates":
	[
		[6,43841776,53939],
		[
			4,
			60002,
			19,
			43841776,
			1509659737,
			"t",
			{
				"from_admin":"43841776",
				"title":" ... "
			}
		]
	]
}


Здесь вытащить число после "ts" можно так:
Json::Reader reader;
	Json::Value obj;
	reader.parse(ifs, obj); // reader can also read strings
	cout << " ts: " << obj["ts"].asUInt() << endl;
// вывод: " ts: 1618405055 "

Две ячейки массива updates так:
const Json::Value updates = obj["updates"];
	for (int idx = 0; idx < updates.size(); ++idx)
	{
		cout << updates[idx] << endl;
	}
// вывод 1: " [6,43841776,53939] "
// вывод 2: " [4,60002,19,43841776............ "


Но вот как можно вытащить значения внутри этих ячеек массива (выше в коде это "вывод 1" и "вывод 2") ? Весь поисковик облазил - нигде не нашел ответа, к сожалению(
  • Вопрос задан
  • 555 просмотров
Пригласить эксперта
Ответы на вопрос 1
Taraflex
@Taraflex
Ищу работу. Контакты в профиле.
Есть более удобная библиотека https://github.com/nlohmann/json
json js= R"({
  "ts" : 1618405055,
  "updates":
  [
    [6,43841776,53939],
    [
      4,
      60002,
      19,
      43841776,
      1509659737,
      "t",
      {
        "from_admin":"43841776",
        "title":" ... "
      }
    ]
  ]
})"_json;

int v = js["updates"][1][0]; //вытаскиваем 4
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы