Android - Jak číst a zapisovat (analyzovat) data ze souboru JSON?

Jak vkládat, aktualizovat a mazat data dostupná v souboru JSON v Androidu?

Android poskytuje několik způsobů zpracování dat aplikací v systému nebo místním úložišti. Budeme se zabývat ukládáním dat specifických pro aplikaci v adresáři dostupném v interním nebo externím úložišti systému.

Úložiště specifické pro aplikaci

  • Interní úložiště: Citlivá data, k nim nemá přístup žádná jiná aplikace.
  • Externí úložiště: Ostatní aplikace mohou přistupovat jako Obrázky.

Co budeme dělat?

Vygenerujeme soubor JSON, který bude uložen v interním úložišti aplikace. Z aplikace pro Android přidá uživatel (WRITE) data, která budou převedena do formátu JSON (objekt JSON) a poté uložena do souboru JSON.

Budeme přistupovat (číst) k datům ze souboru JSON a převádět je do formátu použitelného pro aplikace, jako jsou řetězce, pole atd.

Rovněž aktualizujeme data ze souboru JSON a uložíme je zpět do souboru JSON.

Provedeme také operaci DELETION na datech / objektech JSON.

  1. Zápis dat do souboru JSON: -
Získejte data z aplikace

Data budou převzata z hlediska Java Object a přenesena do souboru JSON.

Tok dat do analýzy JSON

Objekt Java bude předán JsonObject, který převede objekt java na JsonObject, což znamená, že hodnota je nyní spojena s klíčem, protože JSON pracuje jako páry klíč-hodnota.

JSONObject jsonObject = new JSONObject (); jsonObject.put ("Jméno", Jméno); jsonObject.put ("Enroll_No", číslo zápisu); jsonObject.put ("Mobile", Mobile); jsonObject.put ("Address", Address); jsonObject.put ("Branch", Branch); návrat jsonObject;

Nyní uložíme tento JsonObject do našeho souboru JSON dostupného v interním úložišti. K tomu musíme definovat cestu a poté uložíme objekt JSON jako řetězec do souboru Json.

// Převést JsonObject na formát řetězce String userString = JsonObject.toString ();
// Definujte cestu k souboru a jeho název File file = new File (context.getFilesDir (), FILE_NAME); FileWriter fileWriter = nový FileWriter (soubor); BufferedWriter bufferedWriter = nový BufferedWriter (fileWriter); bufferedWriter.write (userString); bufferedWriter.close ();

V tomto okamžiku Data vstoupila do souboru JSON. Jak zjistím, kde jsou data přenesena do Android Studio → Průzkumník souborů zařízení.

Contect.getFilesDir se uloží do složky „files“

Soubor JSON bude mít uložená data Takto: -

{"Jméno": "Ram Varma", "Enroll_no": "160760120546", "Mobile": "8989898989", "Adresa": "Sahyog Socirty", "Branch": "EC"}

2. Čtení dat z JSON FIle: -

Nyní musíme přistupovat k datům, která jsou k dispozici v souboru JSON.

Soubor file = new File (context.getFilesDir (), FILE_NAME);
FileReader fileReader = nový FileReader (soubor); BufferedReader bufferedReader = nový BufferedReader (fileReader); StringBuilder stringBuilder = new StringBuilder (); String line = bufferedReader.readLine (); while (line! = null) {stringBuilder.append (line) .append ("\ n"); line = bufferedReader.readLine (); } bufferedReader.close ();
// Tato odpověď bude obsahovat řetězec Json Format String responce = stringBuilder.toString ();

Tato odpověď je k dispozici ve formátu String Json Format, ale musíme k ní přistupovat ve formě Java Object, abychom ji mohli použít kdekoli v naší aplikaci.

Takže musíme získat data k dispozici v odpovědi (String) pomocí klíče a přiřadit tyto hodnoty našemu Java Object.

JSONObject jsonObject = nový JSONObject (odpovědět);
// Objekt Java JavaObject javaObject = nový JavaObject (jsonObject.get ("name"). ToString (), jsonObject.get ("enroll_no"). ToString (), jsonObject.get ("mobile"). ToString (), jsonObject .get ("adresa"). toString (), jsonObject.get ("branch"). toString ());
návrat javaObject;

Nyní máme přístup k tomuto javaObject a máme hodnotu, která byla uložena v souboru JSON.

javaObjektová data zobrazená v seznamu

3. Aktualizujte a smažte data na JSON FIle: -

Upravte zadaná data a uložte je do souboru JSON

Nyní tento aktualizovaný objekt Java znovu provede operaci WRITE (opakujte krok 1) v souboru JSON a upravená data se zobrazí, když čteme (opakujte krok 2) objekt JSON ze souboru.

DELETE odstraní aktuální objekt a provede postup krok 1 a krok 2.

Nyní můžeme zobrazit data libovolným způsobem ...

Data objektu Java zobrazená ve formátu seznamu