Преобразование строки JSON в значение Lua (json.decode)
Объявление
значение, сообщение_об_ошибке = json.decode(текст_JSON)
Параметры
- текст JSON
Текст JSON, который требуется преобразовать в таблицу.
Возвращаемые значения
- значение
Таблица, текст, число, логическое значение, json.null или nil; при успехе возвращается значение Lua, соответствующее структуре строки JSON, иначе — nil. - сообщение об ошибке
Текст или nil; если при ошибке преобразования значение равно nil, это возвращаемое значение содержит подробное сообщение об ошибке.
Описание
Преобразует текст JSON в соответствующее значение данных Lua.
Эту функцию можно использовать в XUI.
Пример
print(json.decode('true'))
print(json.decode('17'))
print(json.decode('"哈哈"'))
print(json.decode('null'))
print(json.decode(''))
print(table.deep_dump(json.decode('{}')))
print(table.deep_dump(json.decode('{"name":"alice","hello":"world"}')))
print(table.deep_dump(json.decode('[]')))
print(table.deep_dump(json.decode('[1, 2, 3, "foo"]')))
--
sys.alert(print.out())
Примечание: в приведённом коде используются функции из других глав: table.deep_dump, print.out и sys.alert.
-- Использует json.decode для преобразования Unicode-экранирования в формате \uXXXX обратно в текст.
sys.alert(json.decode([["\u4f60\u597d"]])) -- Выводит строку из примера.
Примечание: в приведённом коде используется функция из другой главы — sys.alert.