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

JSON парсер С++ - C++

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

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

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

Заранее спасибо!
http://www.cyberforum.ru/cpp-beginners/thread1399745.html
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.10.2015, 19:38
Я подобрал для вас темы с готовыми решениями и ответами на вопрос JSON парсер С++ (C++):

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

Парсер
Здраствуйте! Есть видео файл. Я хочу найти в нем определенную структуру....

Парсер
Возник вопрос как лучше написать парсер. Интересно просто услышать советы. ...

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

Парсер
Доброго времени суток форумчане! Хочу написать парсер (я великий...

10
EugeneQ
1 / 1 / 0
Регистрация: 20.06.2014
Сообщений: 47
20.10.2015, 19:45 #2
Разве rapidjson ненадо сначала в cmake сгенерировать?
0
Kenny_Dalglish
-10 / 2 / 1
Регистрация: 08.01.2015
Сообщений: 322
Завершенные тесты: 1
20.10.2015, 19:48  [ТС] #3
Четно, не знаю.
0
EugeneQ
1 / 1 / 0
Регистрация: 20.06.2014
Сообщений: 47
20.10.2015, 19:58 #4
Если rapidjson взяли с git, то надо cmake для генерации и doxygen(для документации).
0
Убежденный
Ушел с форума
Эксперт С++
15941 / 7252 / 1176
Регистрация: 02.05.2013
Сообщений: 11,637
Записей в блоге: 1
Завершенные тесты: 1
20.10.2015, 20:56 #5
Цитата Сообщение от Kenny_Dalglish Посмотреть сообщение
У меня на примете rapidjson, но проблема вся в том, что я не знаю как подключить данный парсер.
Взять и почитать документацию (например, файл readme).
То же самое с вероятностью 99% будет ждать при использовании
любой другой библиотеки. Да, кстати, rapidjson - это header-only
библиотека, ничего предварительно там собирать не нужно.
0
Fulcrum_013
Заблокирован
20.10.2015, 21:03 #6
Цитата Сообщение от Kenny_Dalglish Посмотреть сообщение
Хотелось бы уточнить каким парсером лучше всего пользоваться? (Для вопроса/ответа)
Вопрос с в том как конкретно намечается пользовать парсер. Даже для вопрос/ответ есть варианты. Например парсер с "фильтратором базара" - т.е. завершает парсинг когда выбрал из ответа нужные данные и пропускает пакеты ненужного типа, оказалось быстрее написать свой чем модифицировать тот который был в комплекте фреймверка или искать готовый.
0
S_el
2133 / 1661 / 354
Регистрация: 15.12.2013
Сообщений: 6,594
20.10.2015, 22:27 #7
Kenny_Dalglish, сам не пользовался,но этот выглядит неплохо:
https://github.com/nlohmann/json
2
Kastaneda
Jesus loves me
Эксперт С++
4759 / 2962 / 340
Регистрация: 12.12.2009
Сообщений: 7,520
Записей в блоге: 2
Завершенные тесты: 1
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
Lightk
6 / 6 / 1
Регистрация: 14.04.2012
Сообщений: 27
21.10.2015, 00:27 #9
Можно подтянуть property_tree с boost'a, если не ошибаюсь - девелоперы буста на основе rapidjson'a делали функционал.
0
Kastaneda
Jesus loves me
Эксперт С++
4759 / 2962 / 340
Регистрация: 12.12.2009
Сообщений: 7,520
Записей в блоге: 2
Завершенные тесты: 1
21.10.2015, 10:09 #10
Цитата Сообщение от Lightk Посмотреть сообщение
Можно подтянуть property_tree с boost'a
Тоже иногда им пользуюсь, вот пример. Имхо - им можно пользоваться, если проект не завязан на json'е, т.е. где-то в одном месте понадобилось кусок распарсить и boost уже используется, тогда удобно чтоб другие библиотеки с собой не тянуть. Если предвидится большая работа с json, то ptree не лучший выбор.
0
ForEveR
В астрале
Эксперт С++
7994 / 4753 / 651
Регистрация: 24.06.2010
Сообщений: 10,547
Завершенные тесты: 3
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
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.10.2015, 10:51
Привет! Вот еще темы с решениями:

Парсер на С
вопшем есть файл с текстом..... в етом файле есть какие даные(мусор)...и...

Парсер HTML
Хочу написать прогу по выборке из своих html файлов некоторых тегов (img...

парсер строки
Народ, помогите, плиз! проблема такая : сперва считываю строку из файла ...

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


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

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

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