Warsztat.GD

Programowanie => Szkółka => Wątek zaczęty przez: zajmundov w Październik 02, 2018, 13:44:09

Tytuł: [C++] xml dla ustawien gry i savów, jaka biblioteczka?
Wiadomość wysłana przez: zajmundov w Październik 02, 2018, 13:44:09
witam, co teraz "rządzi" jeżeli chodzi o XML? Znalazłem kilka bibliotek i wyszczególniłem dwie: rapidxml i tinyxml. Chciałbym mieć możliwość wczytania/edycji.
Może jeszcze jest jakaś alternatywa dla xml'a?
Tytuł: Odp: [C++] xml dla ustawien gry i savów, jaka biblioteczka?
Wiadomość wysłana przez: Avaj w Październik 02, 2018, 16:16:41
W tej chwili raczej rządzi JSON, XML wyszedł ostatnio z mody :) Kiedyś używałem TinyXML i był spoko. Jeszcze możesz spojrzeć na boost::serialization, on w sumie sam ci będzie zapisywał i odczytywał obiekty z XMLa.
Tytuł: Odp: [C++] xml dla ustawien gry i savów, jaka biblioteczka?
Wiadomość wysłana przez: Reg w Październik 02, 2018, 20:37:09
Ja z bibliotek do XML dla C++ używałem tinyxml i był spoko, ale jakbym miał wybór, to wybrałbym jakikolwiek inny format pliku. Jeżeli jakiś standardowy, to JSON, ewentualnie stary dobry CSV. Możesz też zaprojektować własny format, czy to tekstowy, czy binarny.
Tytuł: Odp: [C++] xml dla ustawien gry i savów, jaka biblioteczka?
Wiadomość wysłana przez: zajmundov w Październik 03, 2018, 02:11:32
hmm.. przeglądam json i jego składnie, wygląta to ciekawiej niż xml :]
A jaki parser polecacie?
Tytuł: Odp: [C++] xml dla ustawien gry i savów, jaka biblioteczka?
Wiadomość wysłana przez: Avaj w Październik 03, 2018, 10:32:10
A jakie masz wymagania? :) ogólnie w kategorii JSONa niewiele można zadziałać między bibliotekami, więc weź pierwszą z brzegu i przetestuj.
Tytuł: Odp: [C++] xml dla ustawien gry i savów, jaka biblioteczka?
Wiadomość wysłana przez: Reg w Październik 03, 2018, 10:42:05
Słyszałem, że RapidJSON jest OK. https://github.com/Tencent/rapidjson
Tytuł: Odp: [C++] xml dla ustawien gry i savów, jaka biblioteczka?
Wiadomość wysłana przez: zajmundov w Październik 04, 2018, 11:42:43
Znalazłem artykuł http://www.thomaswhitton.com/blog/2013/06/28/json-c-plus-plus-examples/
Sprawdzę RapidJSONa ^_^
Tytuł: Odp: [C++] xml dla ustawien gry i savów, jaka biblioteczka?
Wiadomość wysłana przez: koto w Grudzień 18, 2018, 21:28:23
Ten wymiata: https://pugixml.org/
Tytuł: Odp: [C++] xml dla ustawien gry i savów, jaka biblioteczka?
Wiadomość wysłana przez: Condzi w Styczeń 18, 2019, 19:53:08
Ja korzystam z https://github.com/nlohmann/json. Bardzo przyjemna biblioteka, header-only.
Tytuł: Odp: [C++] xml dla ustawien gry i savów, jaka biblioteczka?
Wiadomość wysłana przez: MDW w Styczeń 18, 2019, 20:52:26
Do JSONa używam parsera cJSON. Prosty, malutki (jeden C i jeden plik H) i napisany w czystym starym C, dzięki czemu jest portowalny na dosłownie wszystko. A na portowalności bardzo mi zależało.

Tutaj jest ranking chyba ze 40 różnych parserów JSONa:
https://github.com/miloyip/nativejson-benchmark
Wykresy słupkowe różnych cech pozwalają porównać różne parsery i wstępnie się zorientować w tym zbyt dużym wyborze. 😃

Z rankingu wynika, że warto sprawdzić RapidJSON: szybki, malutki, zjada mało pamięci przy parsowaniu. I ktoś mi kiedyś go nawe polecał. Tylko nie pamiętam dlaczego wtedy nie posłuchałem tego kogoś... 🤔