Luaはcjsonを利用してjsonを読み書きする

1665 ワード

前言
本稿では,本人の実際の使用経験とコード例を結びつけて,Luaでjsonをencodeとdecodeする方法を紹介する.ここではLua CJsonライブラリを採用しています.高性能のJSON解析器とエンコーダで、純Luaライブラリより10~20倍性能が高いです.さらにLuaJsonはUTF-8を完全にサポートしており、これまで他のLua/LuaJit関連パッケージを必要としない.
環境のインストール
ここは詳しく書かないで、勝手にグーグルに聞いてみるとたくさんの答えがあります.
サンプルコード
解析JSON
local cjson = require "cjson"
local sampleJson = [[{"age":"23","testArray":{"array":[8,9,11,14,25]},"Himi":"himigame.com"}]];
--  json   
local data = cjson.decode(sampleJson);
--  json     age  
print(data["age"]);
--          (lua    0    )
print(data["testArray"]["array"][1]);   

コードJSON
local cjson = require "cjson"
local retTable = {};    --    json  
--    
local intDatas = {};
intDatas[1] = 100;
intDatas[2] = "100";
--  
local aryDatas = {};
aryDatas[1] = {};
aryDatas[1][" 11"] = " 11";
aryDatas[1][" 12"] = " 12";
aryDatas[2] = {};
aryDatas[2][" 21"] = " 21";
aryDatas[2][" 22"] = " 22";
-- Table  
retTable[" 1"] = " 1";
retTable[2] = 123;
retTable["int_datas"] = intDatas;
retTable["aryDatas"] = aryDatas;
--       json   
local jsonStr = cjson.encode(retTable);
print(jsonStr);
--   :{"int_datas":[100,"100"],"2":123," 1":" 1","aryDatas":[{" 12":" 12"," 11":" 11"},{" 21":" 21"," 22":" 22"}]}

最後に書く
以上はcjsonライブラリの簡単な応用例にすぎませんが、何か問題があればすぐにメッセージをください.
転載先:https://www.cnblogs.com/sanghg/p/4114469.html