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 pouze tento kurz
Získej okamžitý přístup ke kurzu bez
časového omezení.
425 Kč
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.
- Přístup k jednotlivým lekcím dle způsobu pořízení.
- 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íť.