在996引擎中,可以使用 `SL:JsonDecode` 函数将JSON字符串转换为Lua表。
```lua
-- 示例:将JSON字符串转换为Lua表
local jsonString = '{"name":"浮生梦", "age":30, "skills":["Lua","游戏开发"]}'
local dataTable = SL:JsonDecode(jsonString)
-- 使用转换后的数据
if dataTable then
SL:print("姓名:" .. (dataTable.name or ""))
SL:print("年龄:" .. (dataTable.age or 0))
if dataTable.skills and type(dataTable.skills) == "table" then
for i, skill in ipairs(dataTable.skills) do
SL:print("技能" .. i .. ":" .. skill)
end
end
else
SL:print("JSON解析失败")
end
```
**函数说明:**
- `SL:JsonDecode(jsonStr, isfilter)` - 将JSON字符串转换为Lua表
- `jsonStr`: 要解析的JSON字符串
- `isfilter`: 可选参数,是否过滤违禁词,默认为true
- 返回值:解析后的Lua表,如果解析失败返回nil
**注意:**
1. JSON字符串必须是有效的格式
2. 转换后的表可以直接用Lua语法访问
3. 建议在使用前检查返回值是否为nil
如果JSON格式不正确,函数会返回nil,所以最好先判断返回值再使用。