Posted on by

The JSON library that we’ve been shipping in our sample code (e.g. Facebook) is now an official part of the Corona core. The really great thing about this library is that it makes serializing/deserializing Lua tables a no-brainer.

[cc lang="lua"]
local json = require “json”

— Lua script:
local t = {
["name1"] = “value1″,
["name2"] = {1, false, true, 23.54, “a 21 string”},
name3 = json.null()
}

local json = json.encode (t)
print (json)
–> {“name1″:”value1″,”name3″:null,”name2″:[1,false,true,23.54,"a u0015 string"]}

local t = json.decode(json)
print(t.name2[4])
–> 23.54
[/cc]

As long as you don’t have userdata or functions or cycles (tables with child values that reference a parent table), you’re good to go.

For those of you who don’t speak SQL in your sleep or think the sqlite library is too heavyweight, it’s a great alternative that’s perfect for doing simple persistent storage.


Posted by . Thanks for reading...

7 Responses to “The JSON library now comes pre-installed”

  1. Jonathan Beebe

    @Maicol R: Stay tuned for an upcoming tutorial on using this integrated JSON library–to include using it in conjunction with external JSON text files.

    Reply
  2. Josep Alemany

    Very interesting!

    Could you write a sample to use it with an http request???

    Thanks in advance,

    Josep Alemany

    Reply
  3. Lenny

    I got a Json String from a mysql Database with a address field where an \u00E4 ( a geman ä ) is responsed but i want to change it to an ä.

    I used string.gsub to replace \u00E4 to an ä but it doesn’t work.

    how can I solve this problem. If I put the database field into an local … or an array and print it than i always get ….?….. that means an ? instead of the \u00E4.

    it is very urgent so i would be pleased of any solution

    Thanks in advance
    Lenny

    Reply

Leave a Reply

  • (Will Not Be Published)