Lua:
Praca z JSON
Jak to zrobić:
Lua nie zawiera wbudowanej biblioteki do przetwarzania JSON. Dlatego jedną z popularnych bibliotek firm trzecich jest dkjson
, którą możesz łatwo użyć do kodowania i dekodowania JSON. Najpierw upewnij się, że zainstalowałeś dkjson
, np. przez LuaRocks (luarocks install dkjson
), a następnie postępuj zgodnie z poniższymi przykładami.
Dekodowanie JSON do tabeli Lua
local dkjson = require "dkjson"
local jsonString = '{"name": "Programista Lua", "age": 30, "languages": ["Lua", "JavaScript"]}'
local luaTable, pos, err = dkjson.decode(jsonString, 1, nil)
if err then
print ("Błąd:", err)
else
print("Nazwa:", luaTable.name) -- Wyjście: Nazwa: Programista Lua
print("Wiek:", luaTable.age) -- Wyjście: Wiek: 30
print("Języki:", table.concat(luaTable.languages, ", ")) -- Wyjście: Języki: Lua, JavaScript
end
Kodowanie tabeli Lua do JSON
local dkjson = require "dkjson"
local luaTable = {
name = "Programista Lua",
age = 30,
languages = { "Lua", "JavaScript" }
}
local jsonString = dkjson.encode(luaTable, { indent = true })
print(jsonString)
Przykładowe wyjście dla kodowania:
{
"age": 30,
"languages": [
"Lua",
"JavaScript"
],
"name": "Programista Lua"
}
Te proste przykłady demonstrują, jak pracować z JSON w Lua, ułatwiając integrację aplikacji Lua z różnymi technologiami internetowymi i zewnętrznymi API. Pamiętaj, że choć w tych przykładach użyto dkjson
, inne biblioteki takie jak cjson
i RapidJSON
mogą również być odpowiednie w zależności od potrzeb twojego projektu.