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

JSON парсер С++

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

Author24 — интернет-сервис помощи студентам
Доброго времени суток, уважаемые пользователи 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
Ушел с форума
Эксперт С++
16473 / 7436 / 1187
Регистрация: 02.05.2013
Сообщений: 11,617
Записей в блоге: 1
20.10.2015, 20:56 5
Цитата Сообщение от Kenny_Dalglish Посмотреть сообщение
У меня на примете rapidjson, но проблема вся в том, что я не знаю как подключить данный парсер.
Взять и почитать документацию (например, файл readme).
То же самое с вероятностью 99% будет ждать при использовании
любой другой библиотеки. Да, кстати, rapidjson - это header-only
библиотека, ничего предварительно там собирать не нужно.
0
2063 / 1542 / 168
Регистрация: 14.12.2014
Сообщений: 13,402
20.10.2015, 21:03 6
Цитата Сообщение от Kenny_Dalglish Посмотреть сообщение
Хотелось бы уточнить каким парсером лучше всего пользоваться? (Для вопроса/ответа)
Вопрос с в том как конкретно намечается пользовать парсер. Даже для вопрос/ответ есть варианты. Например парсер с "фильтратором базара" - т.е. завершает парсинг когда выбрал из ответа нужные данные и пропускает пакеты ненужного типа, оказалось быстрее написать свой чем модифицировать тот который был в комплекте фреймверка или искать готовый.
0
2443 / 1841 / 406
Регистрация: 15.12.2013
Сообщений: 8,238
20.10.2015, 22:27 7
Kenny_Dalglish, сам не пользовался,но этот выглядит неплохо:
https://github.com/nlohmann/json
2
5231 / 3204 / 362
Регистрация: 12.12.2009
Сообщений: 8,116
Записей в блоге: 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
5231 / 3204 / 362
Регистрация: 12.12.2009
Сообщений: 8,116
Записей в блоге: 2
21.10.2015, 10:09 10
Цитата Сообщение от Lightk Посмотреть сообщение
Можно подтянуть property_tree с boost'a
Тоже иногда им пользуюсь, вот пример. Имхо - им можно пользоваться, если проект не завязан на json'е, т.е. где-то в одном месте понадобилось кусок распарсить и boost уже используется, тогда удобно чтоб другие библиотеки с собой не тянуть. Если предвидится большая работа с json, то ptree не лучший выбор.
0
В астрале
Эксперт С++
8049 / 4806 / 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
21.10.2015, 10:51
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
Copyright ©2000 - 2024, CyberForum.ru