Android - Sådan læses og skrives (analyseres) data fra JSON File?

Sådan indsættes, opdateres og slettes de tilgængelige data i JSON File i Android?

Android giver flere måder at håndtere appdata på i systemet eller lokalt lager. Vi vil beskæftige os med app-specifik lagring af data i biblioteket tilgængeligt i Internt eller Eksternt Lagring af systemet.

App-specifik lagring

  • Intern opbevaring: Følsomme data, ingen andre applikationer får adgang til dem.
  • Ekstern lagerplads: Andet program kan få adgang til det som Billeder.

Hvad skal vi gøre?

Vi vil generere en JSON-fil, der gemmes i Intern lagring af applikationen. Fra Android-applikationsbruger tilføjer (WRITE) data, som konverteres til JSON-format (JSON Object) og derefter gemmes i JSON-fil.

Vi får adgang til (LÆS) dataene fra JSON-filen og konverteres til app-anvendeligt format som streng, arrays osv.

Vi opdaterer også dataene fra JSON-filen og gemmer dem tilbage til JSON-filen.

Vi udfører også DELETION-operationen på JSON-fildata / -objekter.

  1. Skriv data i JSON-fil: -
Hent data fra ansøgning

Data vil blive taget med hensyn til Java Object og overført til JSON File.

Flow af data til JSON-parsing

Java-objekt overføres til JsonObject, som konverterer java-objektet til JsonObject, hvilket betyder, at værdien nu er knyttet til en nøgle, fordi JSON fungerer som nøgleværdipar.

JSONObject jsonObject = nyt JSONObject (); jsonObject.put ("Navn", Navn); jsonObject.put ("Enroll_No", tilmeldingsnummer); jsonObject.put ("Mobil", mobil); jsonObject.put ("Adresse", adresse); jsonObject.put ("Branch", filial); return jsonObject;

Nu vil vi gemme denne JsonObject til vores JSON-fil, der er tilgængelig på Intern lagring. Til dette skal vi definere stien, og derefter gemmer vi JSON-objektet som en streng i .Json-fil.

// Konverter JsonObject til strengformat Streng userString = JsonObject.toString ();
// Definer filstien og dens navnefilfil = ny fil (context.getFilesDir (), FILE_NAME); FileWriter fileWriter = ny FileWriter (fil); BufferedWriter bufferedWriter = ny BufferedWriter (fileWriter); bufferedWriter.write (userString); bufferedWriter.close ();

På dette tidspunkt er data indtastet i JSON-fil. Hvordan kan jeg se, hvor dataene overføres til Android Studio → Enhedsfiludforsker.

Contect.getFilesDir gemmes i mappen 'filer'

JSON File vil have data gemt sådan: -

{"Name": "Ram Varma", "Enroll_no": "160760120546", "Mobile": "8989898989", "Address": "Sahyog Socirty", "Branch": "EC"}

2. Læs data fra JSON FIle: -

Nu skal vi få adgang til de data, der er tilgængelige i JSON-filen.

Filfil = ny fil (context.getFilesDir (), FILE_NAME);
FileReader fileReader = ny FileReader (fil); BufferedReader bufferedReader = ny BufferedReader (fileReader); StringBuilder stringBuilder = ny StringBuilder (); String line = bufferedReader.readLine (); while (linje! = null) {stringBuilder.append (line) .append ("\ n"); linje = bufferedReader.readLine (); } bufferedReader.close ();
// Denne reaktion har Json Format String String responce = stringBuilder.toString ();

Denne reaktion er tilgængelig i String Json-format, men vi er nødt til at få adgang til den i Java Object-form, så vi kan anvende den, hvor vi vil i vores applikation.

Så vi er nødt til at få de tilgængelige data responce (streng) ved hjælp af nøgle og tildele disse værdier til vores Java-objekt.

JSONObject jsonObject = nyt JSONObject (responce);
// Java-objekt JavaObject javaObject = nyt JavaObject (jsonObject.get ("navn"). ToString (), jsonObject.get ("enroll_no"). ToString (), jsonObject.get ("mobil"). ToString (), jsonObject) .get ("adresse"). toString (), jsonObject.get ("branch"). toString ());
return javaObject;

Nu kan vi få adgang til denne javaObject og have en værdi, der blev gemt i JSON-filen.

javaObject-data, der vises på listen

3. Opdater og slet dataene til JSON FIle: -

Rediger de givne data, og gem dem i JSON File

Nu Dette opdaterede Java-objekt udfører igen WRITE-operation (gentag trin 1) på JSON-fil, og redigerede data vises, når vi læser (gentag trin 2) JSON-objektet fra filen.

DELETE fjerner det aktuelle objekt og udfører proceduren i trin 1 og trin 2.

Nu kan vi vise dataene, uanset hvilken måde vi ønsker ...

Java-objektdata vises i listeformat