Hauptinhalt

jsondecode

Dekodieren von JSON-formatiertem Text

Beschreibung

value = jsondecode(txt) verarbeitet JSON-Text.

Beispiel

Beispiele

alle reduzieren

Zeigen Sie die JSON-formatierte Zeichenfolge ["one", "two", "three"] an.

jsondecode('["one", "two", "three"]')
ans = 3×1 cell
    {'one'  }
    {'two'  }
    {'three'}

Eingabeargumente

alle reduzieren

JSON-formatierter Text, angegeben als Zeichenfolgenskalar oder Zeichenvektor. Ungültige Namen im JSON-Text werden mit matlab.lang.makeValidName zu gültigen Namen gemacht.

Beispiel: '{"IDs":[116,943,234,38793]}'

Datentypen: char

Ausgabeargumente

alle reduzieren

MATLAB-Daten, die als dekodierter, JSON-formatierter Text zurückgegeben werden. value hängt von den Daten ab, die in txt kodiert sind.

Einschränkungen

  • Wenn Sie einen Wert dekodieren und ihn dann kodieren, kann MATLAB nicht garantieren, dass das Ergebnis mit der ursprünglichen Zeichenfolge identisch ist. Insbesondere Feldnamen in JSON-Objekten, die keine gültigen MATLAB-Kennungen sind, werden möglicherweise von der makeValidName-Funktion geändert.

Algorithmen

JSON unterstützt weniger Datentypen als MATLAB. jsondecode konvertiert JSON-Datentypen in die MATLAB-Datentypen in dieser Tabelle. jsondecode konvertiert JSON-Objektfeldnamen in MATLAB-Strukturfeldnamen.

JSON-Datentyp

MATLAB-Datentyp

null, in numerischen Arrays

NaN

null, in nicht numerischen Arrays

Leeres double []

Boolesch

Skalar logical

Zahl

Skalar double

Zeichenfolge

Zeichenvektor

Objekt (In JSON bedeutet Objekt eine ungeordnete Menge von Name-Wert-Paaren.)

Skalare Struktur (Namen werden mithilfe von matlab.lang.makeValidName gültig gemacht.)

Array, wenn die Elemente unterschiedliche Datentypen aufweisen

Zellenarray

Array aus Booleschen

Array aus logical

Array aus Zahlen

Array aus double

Array aus Zeichenfolgen

Zellenarray aus Zeichenvektoren

Array aus Objekten – Gleiche Feldnamen

Strukturarray

Array aus Objekten – Verschiedene Feldnamen

Zellenarray aus skalaren Strukturen

Erweiterte Fähigkeiten

alle erweitern

Thread-Based Environment
Führen Sie mithilfe von MATLAB® backgroundPool den Code im Hintergrund aus oder machen Sie den Code mit der Parallel Computing Toolbox™ ThreadPool schneller.

Versionsverlauf

Eingeführt in R2016b