Heim > Java > javaLernprogramm > Hauptteil

Wie analysiere ich verschachtelte JSON-Daten mit GSON in Android?

Linda Hamilton
Freigeben: 2024-10-30 03:21:28
Original
297 Leute haben es durchsucht

How to Parse Nested JSON Data with GSON in Android?

JSON-Daten mit GSON in Android analysieren

Frage:

So analysieren Sie JSON-Daten Verwenden Sie GSON in Android?

Problem:

<code class="json">{
    "count": "12",
    "colbreak": 1,
    "name": "unary rels",
    "score": "9090",
    "Words": [
        {
            "count": 6,
            "word": "prp_għaċ-",
            "name": "prp_għaċ-",
            "score": 9.1,
            "Words": "kol",
            "seek": 2231297
        }
    ],
    "seek": 0
}</code>
Nach dem Login kopieren

Der folgende Code analysiert die JSON-Daten nicht korrekt, was zu einer „JsonSyntaxException“ führt:

<code class="java">public static <T> ArrayList<T> JsonParse(T t, String response) {
    // ...

    reader.beginObject();
    while (reader.hasNext()) {
        T cse = (T) gson.fromJson(reader, t.getClass());
        lcs.add(cse);
    }

    reader.endObject();

    // ...
}</code>
Nach dem Login kopieren

Antwort:

Um die JSON-Daten korrekt zu analysieren, befolgen Sie diese Schritte:

  1. Lesen Sie den JSON-Wert:
<code class="java">try {
    AssetManager assetManager = getAssets();
    InputStream ims = assetManager.open("file.txt");

    Gson gson = new Gson();
    Reader reader = new InputStreamReader(ims);

    GsonParse gsonObj = gson.fromJson(reader, GsonParse.class);

} catch(IOException e) {
    e.printStackTrace();
}</code>
Nach dem Login kopieren
  1. Definieren Sie die Datenklassen:
<code class="java">public class GsonParse {
    @SerializedName("count")
    private String count;

    // ...

    public String getCount() {
        return count;
    }

    public void setCount(String count) {
        this.count = count;
    }

    // ...
}

public class Words {
    @SerializedName("count")
    private String count;

    // ...

    public String getCount() {
        return count;
    }

    public void setCount(String count) {
        this.count = count;
    }

    // ...
}</code>
Nach dem Login kopieren

Zusätzliche Hinweise:

  • Stellen Sie sicher, dass bei der Übertragung von JSON-Daten über HTTP die UTF-8-Kodierung verwendet wird.
  • Konvertieren Sie alle eingehenden JSON-Daten bei Bedarf in das UTF-8-Format.
  • Stellen Sie sicher, dass Sie dies getan haben hat die Parameter in die verschachtelte Klasse „Wörter“ aufgenommen.

Das obige ist der detaillierte Inhalt vonWie analysiere ich verschachtelte JSON-Daten mit GSON in Android?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!