如何使用 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+ 閱讀量

開啟你的 職業生涯

透過完成課程獲得認證

立即開始
廣告