Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.91/34: Рейтинг темы: голосов - 34, средняя оценка - 4.91
-10 / 2 / 1
Регистрация: 08.01.2015
Сообщений: 325
1

JSON парсер С++

20.10.2015, 19:38. Показов 6662. Ответов 10
Метки нет (Все метки)

Доброго времени суток, уважаемые пользователи cyberforum!
Хотелось бы уточнить каким парсером лучше всего пользоваться? (Для вопроса/ответа)
У меня на примете rapidjson, но проблема вся в том, что я не знаю как подключить данный парсер.

Прощу Вашей помощи, либо помочь подключить rapidjson либо порекомендовать другой парсер с русскоязычной документацией (С английским языком у меня все плохо )

Заранее спасибо!
1

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
20.10.2015, 19:38
Ответы с готовыми решениями:

Посоветуйте парсер с минимальным набором инстализации json, xml, ini
Всем привет, нужен парсер чего-нибудь что переводит текст в переменной string в обычные С++...

SAX json парсер
Вечер добрый. Есть задача реализовать SAX-парсер JSON-a (парсинг не во временные переменные, а...

json парсер
Всем привет! Ни как не получается пропарсить такое дело, кусок начала: Это формат гугла,...

Парсер JSON
привет ребята) у меня к вам вопрос.. у меня есть JSON ответ сервера, мне нужно распарсить...

10
1 / 1 / 0
Регистрация: 20.06.2014
Сообщений: 47
20.10.2015, 19:45 2
Разве rapidjson ненадо сначала в cmake сгенерировать?
0
-10 / 2 / 1
Регистрация: 08.01.2015
Сообщений: 325
20.10.2015, 19:48  [ТС] 3
Четно, не знаю.
0
1 / 1 / 0
Регистрация: 20.06.2014
Сообщений: 47
20.10.2015, 19:58 4
Если rapidjson взяли с git, то надо cmake для генерации и doxygen(для документации).
0
Ушел с форума
Эксперт С++
16425 / 7399 / 1186
Регистрация: 02.05.2013
Сообщений: 11,637
Записей в блоге: 1
20.10.2015, 20:56 5
Цитата Сообщение от Kenny_Dalglish Посмотреть сообщение
У меня на примете rapidjson, но проблема вся в том, что я не знаю как подключить данный парсер.
Взять и почитать документацию (например, файл readme).
То же самое с вероятностью 99% будет ждать при использовании
любой другой библиотеки. Да, кстати, rapidjson - это header-only
библиотека, ничего предварительно там собирать не нужно.
0
2054 / 1529 / 167
Регистрация: 14.12.2014
Сообщений: 13,326
20.10.2015, 21:03 6
Цитата Сообщение от Kenny_Dalglish Посмотреть сообщение
Хотелось бы уточнить каким парсером лучше всего пользоваться? (Для вопроса/ответа)
Вопрос с в том как конкретно намечается пользовать парсер. Даже для вопрос/ответ есть варианты. Например парсер с "фильтратором базара" - т.е. завершает парсинг когда выбрал из ответа нужные данные и пропускает пакеты ненужного типа, оказалось быстрее написать свой чем модифицировать тот который был в комплекте фреймверка или искать готовый.
0
2417 / 1817 / 400
Регистрация: 15.12.2013
Сообщений: 7,892
20.10.2015, 22:27 7
Kenny_Dalglish, сам не пользовался,но этот выглядит неплохо:
https://github.com/nlohmann/json
2
Jesus loves me
Эксперт С++
5189 / 3157 / 355
Регистрация: 12.12.2009
Сообщений: 7,970
Записей в блоге: 2
20.10.2015, 23:21 8
Я использую rapidjson, просто скачал исходники и в билд ситстеме указал дополнительный INCLUDE PATH.
Плюс rapidjson'а в том, что он поддерживает 2 режима разбора - SAX и DOM. Какой выбрать зависит от ситуации. Я тут еще на досуге для него обертку накатал, чтоб был единый синтаксис с mongodb'шными С++'ыми BSON'ами

Добавлено через 5 минут

Не по теме:

Цитата Сообщение от S_el Посмотреть сообщение
,но этот выглядит неплохо:
https://github.com/nlohmann/json
Тоже посмотрел, синтаксис гораздо красивее, чем у rapidjson и интеграция с STL хорошая. Еще интересно было бы на бенчмарки перфоманса относительно rapidjson посмотреть.

0
6 / 6 / 1
Регистрация: 14.04.2012
Сообщений: 27
21.10.2015, 00:27 9
Можно подтянуть property_tree с boost'a, если не ошибаюсь - девелоперы буста на основе rapidjson'a делали функционал.
0
Jesus loves me
Эксперт С++
5189 / 3157 / 355
Регистрация: 12.12.2009
Сообщений: 7,970
Записей в блоге: 2
21.10.2015, 10:09 10
Цитата Сообщение от Lightk Посмотреть сообщение
Можно подтянуть property_tree с boost'a
Тоже иногда им пользуюсь, вот пример. Имхо - им можно пользоваться, если проект не завязан на json'е, т.е. где-то в одном месте понадобилось кусок распарсить и boost уже используется, тогда удобно чтоб другие библиотеки с собой не тянуть. Если предвидится большая работа с json, то ptree не лучший выбор.
0
В астрале
Эксперт С++
8035 / 4792 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
21.10.2015, 10:51 11
Да, rapid-json хороший вариант. Самое главное для нас было что есть SAX режим. И поэтому библиотечку парсящую/собирающую json in-place прямо в объекты, без промежуточного хранилища, было написать не так уж сложно. Можно еще посмотреть на cereal.

Добавлено через 13 минут

Не по теме:

https://github.com/nlohmann/json - клевая библиотека судя по виду. Но lexer просто убиться веником. Видимо просто код выданный yacc взяли, чтобы не тащить сам yacc.

0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
21.10.2015, 10:51

парсер Json
Добрый день есть json...

Парсер JSON
C помощью Jsoup парсю JSON страницу и кодировка не работает пишет тупо вопросики. Как исправить? ...

Парсер JSON
Привет всем. Есть структура в формате json, которая записывается в ассоциативный массив: $obj =...

Питон и Json, парсер
Здравствуйте, я потратил несколько ней, кучу часов за поисковиком, но так и не нашел решения своей...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.