Lekce 14 - Narozeniny v C++ - Modelová vrstva JSON - Dokončení
V minulé lekci, Narozeniny v C++ - Modelová vrstva JSON - Druhá část, jsme si připravili hlavičkový soubor třídy
PersonModel
.
Dnes budeme tuto třídu implementovat.
Konstruktor
Začneme konstruktorem, který načte data o osobách ze souboru a v případě, že soubor zatím neexistuje, např. byl nějakým nedopatřením smazán, vytvoří ukázkovou kolekci s jednou osobou. Mám zde Friedricha Nietzscheho, ale volba je na vás.
Prvně souboru přiřadíme jméno z konstanty. V minulé lekci jsme si
vytvořili atribut m_isChanged
, který udává zda došlo v datech
k nějakým změnám. Tento příznak nastavíme na false
, protože
k žádné změně v datech zatím nedošlo. Pokud bychom naopak při
neexistenci souboru tvořili novou osobu, nastavíme příznak na
true
.
Dále provedeme test existence souboru a pokud je k dispozici, pokusíme se
jej otevřít pro čtení jako textový soubor. Celý soubor načteme do objektu
JsonDocument
a vyhodnotíme případné chyby ve formátu.
Následně dokument převedeme na pole, se kterým budeme v modelu dále
pracovat, a všechny CRUD operace (vytvoření, čtení, editace, odstranění)
budeme provádět právě nad tímto QJsonArray
.
Zdrojový kód implementace bude v současné chvíli následující:
...konec náhledu článku...
Pokračuj dál
Došel jsi až sem a to je super! Věříme, že ti první lekce ukázaly něco nového a užitečného.
Chceš v kurzu pokračovat? Přejdi do prémiové sekce.
Koupit tento kurz
Před koupí tohoto článku je třeba koupit předchozí díl
Obsah článku spadá pod licenci Premium, koupí článku souhlasíš se smluvními podmínkami.
- Neomezený a trvalý přístup k jednotlivým lekcím.
- Kvalitní znalosti v oblasti IT.
- Dovednosti, které ti pomohou získat vysněnou a dobře placenou práci.
Popis článku
Požadovaný článek má následující obsah:
V C++ tutoriálu dopíšeme klíčovou část logiky práce s JSON soubory v Qt. Pokračujeme na upomínači narozenin.
Kredity získáš, když podpoříš naši síť. To můžeš udělat buď zasláním symbolické částky na podporu provozu nebo přidáním obsahu na síť.