Zum Hauptinhalt springen

Lua-Werte in JSON-Strings umwandeln (json.encode)

Deklaration

JSON-Text, Fehlermeldung = json.encode(Wert)

Parameter

  • Wert
    Tabellentyp, Texttyp, Zahlentyp, Boolescher Typ oder json.null; der in JSON-Text umzuwandelnde Lua-Wert

Rückgabewerte

  • JSON-Text
    Texttyp oder nil; bei erfolgreicher Umwandlung wird ein JSON-String zurückgegeben, andernfalls nil
  • Fehlermeldung
    Texttyp oder nil; wenn die Umwandlung fehlschlägt und JSON-Text den Wert nil hat, enthält dieser Rückgabewert die konkrete Fehlermeldung

Beschreibung

Die Umwandlung von Datenwerten in Lua in das JSON-Format erleichtert den Austausch mit anderen Sprachen.
Hinweis: Nicht jeder Lua-Wert kann in JSON umgewandelt werden, zum Beispiel Benutzerdaten, Funktionen oder Tabellen, die Benutzerdaten oder Funktionen enthalten.
Diese Funktion kann in XUI verwendet werden.

Beispiel

local tb = {
["name"] = "alice",
["message"] = "hello, world",
scores = {
90, 85, 72, 100, 68,
},
nullvalue = json.null,
}
local jsonstr = json.encode(tb)
sys.alert(jsonstr)
--
local tmp = json.decode(jsonstr)
sys.alert(tmp.scores[4])
sys.alert(tostring(tmp.nullvalue))

Hinweis: Der obige Code verwendet die Funktion sys.alert, die nicht in diesem Kapitel beschrieben wird.