, json står for javascript objekt notation. det er en uafhængig dataudvekslingsformatet og er det bedste alternativ for xml.i dette kapitel forklares, hvordan til at analysere de json fil og ekstrakt nødvendige oplysninger fra det, androide indeholder fire forskellige klasser for at manipulere json data.disse klasser, jsonarray, jsonobject, jsonstringer og jsontokenizer.,, det første skridt er at identificere de områder, i json data, som de er interesseret i.f.eks.i nedenstående json vi interesserede i at få kun temperatur. {"system" ("land": "gb", "sunrise": 1381107633 "sunset": 1381149604} "vejr": [{"id": 711 "primære": "ryger", "beskrivelse": "ryger", "ikon": "50n"}] "primære" ("midlertidige": 304.15 "pres": 1009,), json - elementer, en json fil består af mange elementer.her er skemaet af komponenter i en json fil og deres beskrivelse og minus; senior - komponent & beskrivelse 1, system ([), i en json fil, square aldersgruppe ([) udgør en json system, 2, genstande ((), i en json fil, curly aldersgruppe (2) udgør en json objekt, 3, nøgle, en json formål indeholder en nøgle, som blot er en snor.par nøgle /værdi udgør en json objekt, 4, værdi, hver nøgle har en værdi, som kunne være snor, tal eller dobbelt e.t.c,, json - parsing, for parsing en json indvendinger, vil vi skabe et objekt i klasse jsonobject og fastlægge en streng, der indeholder json data til det.dens syntaks:, snor i; jsonobject læser = nye jsonobject (i), som er det sidste skridt er at analysere den json.en json fil består af forskellige formål med forskellige centrale /værdi par e.t.c. så jsonobject har en særskilt funktion for parsing hver af den del af json fil.dens syntaks er følgende:, jsonobject. = læser. getjsonobject ("system"); land = sys. getstring ("land"); jsonobject vigtigste = læser. getjsonobject ("primære"); temperaturen = vigtigste. getstring ("midlertidige"), den metode, getjsonobject, returnerer den json objekt.den metode, getstring, returnerer den snor værdi af specificeret nøgle. bortset fra de metoder, der er andre metoder, der er fastsat i denne klasse for bedre parsing json filer.disse metoder er anført nedenfor og minus; senior - metode & beskrivelse 1, kom (string navn), denne metode kun returnerer den værdi, men i form af objekttype, 2, getboolean (string navn), denne metode giver boolean - værdi, der er angivet af de centrale, 3, getdouble (string - navn) denne metode giver dobbelte værdi, der er specificeret i de centrale, 4, getint (string navn), denne metode giver hele tal, der er nævnt i det centrale, 5, getlong (string navn), denne metode, returnerer den værdi, der er specificeret i lang tid nøglen, 6, length(), denne metode kommer antallet af navn /værdi kortlægninger i dette objekt... 7, names(), denne metode vender tilbage til et system med snoren navne i dette objekt., f.eks. til at eksperimentere med dette eksempel, kan du styre det på enfaktiske anordning eller en emulator. skridt beskrivelse 1 du vil bruge androide studie for at skabe en androide anvendelse.samtidig med at skabe dette projekt, vær sikker på du målet sdk og udarbejde med i den seneste version af androide sdk at anvende højere niveauer af apis., 2 ændre src /mainactivity.java fil at tilføje de nødvendige regler.3, ændre de res /layout /activity_main at tilføje respektive xml - komponenter 4 ændre de res /værdier /string.xml for at tilføje de nødvendige snor komponenter 5 løb anvendelse og vælge en løbende androide anordning og installere anvendelsen på det og kontrollere de resultater, der er indholdet af den ændrede vigtigste aktivitet fil src /mainactivity -.pakken er com.tutorialspoint.json; import android.app.activity; import android.os.strictmode; import android.support.v7.app.actionbaractivity; import android.os.bundle; import android.util.log; import android.view.menu; import android.view.menuitem; import android.widget.button; import android.widget.textview; import org.apache.http.httpentity; import org.apache.http.httpresponse; import org.apache.http.statusline; import org.apache.http.client.clientprotocolexception; import org.apache.http.client.httpclient; import org.apache.http.client.methods.httpget; import org.apache.http.impl.client.defaulthttpclient; import org.json.jsonarray; import org.json.jsonexception; import org.json.jsonobject; import java.io.bufferedreader; import java.io.ioexception; import java.io.inputstream; import java.io.inputstreamreader; offentlige klasse mainactivity udvider aktivitet (offentlige eller oncreate (bundt savedinstancestate) (super. oncreate (savedinstancestate); setcontentview (r.layout. activity_main); textview produktion = (textview) findviewbyid (r.id.textview1); snor strjson = "{\\" arbejdstager. ": [{." id. ": en" 01. ", en" navn) ": en" gopal varma. ", en" løn. ": en" 500000. "} {\\" id \\ ": en" 02. "". "navn.":. "sairamkrishna." "." løn. ": \\" 500000. "}, {." id. ": en" 03. ", en" navn) ": en" sathish kallakuri. "". "løn.": "6.00000. "}]}" snor data = "." prøv {jsonobject jsonrootobject = nye jsonobject (strjson); //få tilfælde af jsonarray, der indeholder jsonobjects jsonarray jsonarray = jsonrootobject. optjsonarray ("arbejdstager"); //iterate den jsonarray og trykke info om jsonobjects for int (i = 0 og jeg < jsonarray. length(); jeg + +) (jsonobject jsonobject = jsonarray. getjsonobject (i); int id = tal. parseint (jsonobject. optstring (id). tostring()); snor navn = jsonobject. optstring ("navn"). tostring(); flyde løn = flyde. parsefloat (jsonobject. optstring ("løn"). tostring());data + = "knude" + + ": \\ n id =" + id + "\\ n navn =" + "(n = navn + løn" + løn + ") n"} produktion. settext (data)} fangst (jsonexception e) (f. printstacktrace().}), følgende er det ændrede indhold af xml, res /layout /activity_main. xml,., < relativelayout xmlns: androide = "http://schemas.android.com/apk/res/android" xmlns: værktøj = "http://schemas.android.com/tools" androide: layout_width = "match_parent" androide: layout_height = "match_parent" androide: paddingleft = "@ dimension /activity_horizontal_margin" androide: paddingright = "@ dimension /activity_horizontal_margin" androide: paddingtop = "@ dimension /activity_vertical_margin" androide: paddingbottom = "@ dimension /activity_vertical_margin" værktøjer: forbindelse = ". mainactivity" >< textview androide: layout_width = "wrap_content" androide: layout_height = "wrap_content" androide: tekst = "json eksempel" androide: id = "@ + id /textview" androide: layout_alignparenttop = "ægte" androide: layout_centerhorizontal = "ægte" androide: textsize = "30dp" /> < textview androide: layout_width = "wrap_content" androide: layout_height = "wrap_content" androide: tekst = "undervise" androide: id = "@ + id /textview2" androide: layout_below = "@ + id /textview" androide: layout_centerhorizontal = "ægte" androide: textsize = "35dp" androide: textcolor = "# ff16ff01" /> < textview androide: layout_width = "wrap_content" androide: layout_height = "wrap_content" android: tekst = "nye" androide: id = "@ + id /textview1" androide: layout_below = "@ + id /textview2" androide: layout_alignparentleft = "ægte" androide: layout_alignparentstart = "ægte" androide: layout_alignparentright = "ægte" androide: layout_alignparentend = "ægte" /> < og /relativelayout > efter er indholdet af androidmanifest.xml, fil. <?xml - version = "0" kodning = "utf - 8"?> < åbenbar xmlns: androide = "http://schemas.android.com/apk/res/android" pakke = "kom. f.eks. sairamkrishna. myapplication" > < anvender tilladelse androide: navn = "androide. tilladelse. internet" /> < anvendelse androide: allowbackup = "ægte" androide: ikon = "@ mipmap /ic_launcher" androide: fareseddel = "@ snor /app_name" androide: tema = "@ stil /apptheme" > < aktivitet androide: navn = ". mainactivity" androide: fareseddel = "@ snor /app_name" > < hensigt filter > < aktion androide: navn = "androide. forsæt. vigtigste" /> < kategori androide: navn = "androide. hensigt. kategori. granatkaster" /> < /hensigt filter > < /aktivitet >< /anvendelse > < /åbenbar > lad os forsøge at styre vores ansøgning vi bare ændres.jeg går ud fra, at du har skabt din, avd, mens det miljø fælde.at løbe app fra androide studie, åbne en af jeres projekt er aktivitet, filer og klik, ikon fra toolbar.- androiden studie installationer - app på din avd og starter det, og hvis det er fint med din fælde og anvendelse, vil det vise følgende emulator vindue:, frem for eksempel, der viser data fra snor json, oplysningerne er indeholdt arbejdsgiveren oplysninger samt løn oplysninger,
- androiden json parser tutorielle
Previous:- androiden jetplayer tutorielle