Sample code for 30+ languages & platforms
Lua

Iterate over JSON Array containing JSON Objects

See more JSON Examples

Demonstrates how to load a JSON array and iterate over the JSON objects.

Chilkat Lua Downloads

Lua
local chilkat = require("chilkat")

-- Loads the following JSON array and iterates over the objects:
--
-- [
-- {"tagId":95,"tagDescription":"hola 1","isPublic":true},
-- {"tagId":98,"tagDescription":"hola 1","isPublic":true},
-- {"tagId":101,"tagDescription":"hola 1","isPublic":true},
-- {"tagId":104,"tagDescription":"hola 1","isPublic":true},
-- {"tagId":107,"tagDescription":"hola 1","isPublic":true},
-- {"tagId":110,"tagDescription":"hola 1","isPublic":true},
-- {"tagId":113,"tagDescription":"hola 1","isPublic":true},
-- {"tagId":114,"tagDescription":"hola 2","isPublic":true},
-- {"tagId":111,"tagDescription":"hola 2","isPublic":true},
-- {"tagId":108,"tagDescription":"hola 2","isPublic":true},
-- {"tagId":105,"tagDescription":"hola 2","isPublic":true},
-- {"tagId":102,"tagDescription":"hola 2","isPublic":true},
-- {"tagId":99,"tagDescription":"hola 2","isPublic":true},
-- {"tagId":96,"tagDescription":"hola 2","isPublic":true},
-- {"tagId":97,"tagDescription":"hola 3","isPublic":true},
-- {"tagId":100,"tagDescription":"hola 3","isPublic":true},
-- {"tagId":103,"tagDescription":"hola 3","isPublic":true},
-- {"tagId":106,"tagDescription":"hola 3","isPublic":true},
-- {"tagId":109,"tagDescription":"hola 3","isPublic":true},
-- {"tagId":112,"tagDescription":"hola 3","isPublic":true},
-- {"tagId":115,"tagDescription":"hola 3","isPublic":true},
-- {"tagId":93,"tagDescription":"new tag","isPublic":true},
-- {"tagId":94,"tagDescription":"new tag","isPublic":true},
-- {"tagId":89,"tagDescription":"tag 1","isPublic":true},
-- {"tagId":90,"tagDescription":"tag 2","isPublic":true},
-- {"tagId":91,"tagDescription":"tag private 1","isPublic":false},
-- {"tagId":92,"tagDescription":"tag private 2","isPublic":false}
-- ]

-- Load a file containing the above JSON..
local sbJsonArray = chilkat.StringBuilder.new()
local success = sbJsonArray:load_file("qa_data/json/arraySample.json", "utf-8")

local arr = chilkat.JsonArray.new()
success = arr:load_sb(sbJsonArray)

local tagId = 0
local tagDescription = ""
local isPublic = false

local i = 0
local count = arr.size
local obj
while i < count do
    obj = arr:object_at(i)
    tagId = obj:int_of("tagId")
    tagDescription = obj:string_of("tagDescription")
    isPublic = obj:bool_of("isPublic")

    print("tagId: " .. tagId)
    print("tagDescription: " .. tagDescription)
    print("isPublic: " .. tostring(isPublic))
    print("--")

    i = i + 1
end