Lua:
Робота з JSON
Як це зробити:
Lua не включає вбудованої бібліотеки для обробки JSON. Таким чином, однією з популярних сторонніх бібліотек є dkjson
, яку ви можете легко використовувати для кодування і декодування JSON. Спочатку переконайтеся, що встановили dkjson
, наприклад, через LuaRocks (luarocks install dkjson
), а потім слідуйте прикладам нижче.
Декодування JSON до таблиці Lua
local dkjson = require "dkjson"
local jsonString = '{"name": "Lua Programmer", "age": 30, "languages": ["Lua", "JavaScript"]}'
local luaTable, pos, err = dkjson.decode(jsonString, 1, nil)
if err then
print ("Помилка:", err)
else
print("Ім'я:", luaTable.name) -- Вивід: Ім'я: Lua Programmer
print("Вік:", luaTable.age) -- Вивід: Вік: 30
print("Мови:", table.concat(luaTable.languages, ", ")) -- Вивід: Мови: Lua, JavaScript
end
Кодування таблиці Lua в JSON
local dkjson = require "dkjson"
local luaTable = {
name = "Lua Programmer",
age = 30,
languages = { "Lua", "JavaScript" }
}
local jsonString = dkjson.encode(luaTable, { indent = true })
print(jsonString)
Приклад виводу для кодування:
{
"age": 30,
"languages": [
"Lua",
"JavaScript"
],
"name": "Lua Programmer"
}
Ці прості приклади демонструють, як працювати з JSON у Lua, роблячи легким інтеграцію програм Lua з різними веб-технологіями та зовнішніми API. Пам’ятайте, хоча в цих прикладах використовується dkjson
, інші бібліотеки, такі як cjson
та RapidJSON
, також можуть бути підходящими альтернативами залежно від потреб вашого проекту.