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 ("Error:", err)
else
print("Name:", luaTable.name) -- ผลลัพธ์: Name: Lua Programmer
print("Age:", luaTable.age) -- ผลลัพธ์: Age: 30
print("Languages:", table.concat(luaTable.languages, ", ")) -- ผลลัพธ์: 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
ก็สามารถเป็นทางเลือกที่เหมาะสมได้เช่นกัน ขึ้นอยู่กับความต้องการของโปรเจ็คของคุณ