如何使用 Lua 编程语言编码和解码 JSON?


JSON 是 JavaScript 对象表示法的缩写。它是一种在编程世界中广泛使用的格式类型,但它本身只是一种文本格式。Lua 有许多可用的 JSON 库,但最常用的库是 **lunajson**。

在本文中,我们将首先学习如何借助 **luarocks** 安装 **lunajson**,然后我们将了解如何使用 **luna-json** 并使用它来涵盖字符串编码和解码为 JSON 或反之亦然的常见情况。最后,我们将介绍一些 JSON 的更实用的用例。

安装 Lunajson

为了安装 Lunajson,我们需要先安装 luarocks,然后只需一行简单的命令即可安装 lunajson。要安装 luarocks,我们需要按照下面显示的命令进行操作:

sudo apt install luarocks

在 Mac 设备上,我们可以编写以下命令来安装 Luarocks。

brew update
brew install luarocks

对于 Windows,我们需要按照此处的指南进行操作:链接

现在,我们只需要安装 Lunajson。为此,只需在您的终端中键入以下命令:

sudo luarocks install lunajson

以上命令适用于 Mac 和 Linux,对于 Windows,我们需要键入以下命令:

luarocks install lunajson

解码 JSON

现在我们已经了解了如何在本地机器上设置 lunajson,是时候利用该库来解码 JSON 了。

请考虑以下示例:

示例

#!/usr/bin/lua5.1
lunajson = require 'lunajson'
local jsonraw = '{"test":[1,2,3]}'
local jsonparse = lunajson.decode( jsonraw )
print( jsonparse["test"][ 1 ] .. ", " .. jsonparse["test"][ 2 ] .. ", " .. jsonparse["test"][ 3 ] .. ")

输出

./json1.lua
1, 2, 3

编码 JSON

请考虑以下示例,该示例描述了编码 JSON 的用例。

示例

#!/usr/bin/lua5.1
luna = require 'lunajson'
local test = { ["cat"] = { ["name"] = "MeowPow", ["age"] = 5 }, ["dog"] = { ["name"] = "Good Boyyyy", ["age"] = 12 } }
local json = luna.encode( test )
print( json )

输出

./json3.lua
{"cat":{"name":"MeowPow","age":5},"dog":{"name":"Good Boyyyy","age":12}}

更新于: 2021年7月19日

4K+ 阅读量

开启你的 职业生涯

通过完成课程获得认证

立即开始
广告

© . All rights reserved.