Json 操作

Json 类

  1. var myJson = new Json("{"\key\":\"value\"}"); //传入json编码的字串,会自动构造
  2. var myJson2 = new Json(); //不传值则会构造一个新Json
函数描述参数用法
add(key,value) 添加key->value节点 key:键值 value:数字和字符串或Json对象 myJson.add("string","value")myJson.add("int",10)myJson.add("float",5.0)myJson.add("bool",true)myJson.add("json",otherJson)
addObject(key) 用key指向一个空Json节点,返回新节点 key:键值 var newJson = myJson.addObject("json1")
addArray(key) 用key指向一个空Json数组,返回新节点 key:键值 var newJsonArr = myJson.addArray("json2")
push(value) 自身是数组,在末尾添加节点 value:数字和字符串或Json对象 myJson.push("string")myJson.push(10)myJson.push(5.0)myJson.push(false)myJson.push(otherJson)
pushObject() 自身是数组,在末尾添加一个空Json节点,返回新节点 var newJson = myJson.pushObject()
pushArray() 自身是数组,在末尾添加一个空Json数组,返回新节点 var newJsonArr = myJson.pushArray()
get(key) 获取内容 key:键值或数组坐标 var value = myJson.get("key")var value = myJson.get(1)
getInt(key) 获取内容并转成整数 key:键值或数组坐标 var value = myJson.getInt("key")var value = myJson.getInt(1)
getLong(key) 获取内容并转成long类型 key:键值或数组坐标 var value = myJson.getLong("key")var value = myJson.getLong(0)
getFloat(key) 获取内容并转成float类型 key:键值或数组坐标 var value = myJson.getFloat("key")var value = myJson.getFloat(0)
getString(key) 获取内容并转成字符串 key:键值或数组坐标 var value = myJson.getString("key")var value = myJson.getString(0)
set(key,value) 修改节点 key:键值或者坐标 value:数字和字符串或Json对象 myJson.set("string","value")myJson.set("int",10)myJson.set("float",5.0)myJson.set(0,true)myJson.ser(2,otherJson)
setInt(key,value) 修改节点 key:键值或者坐标 value:数字或字符串,强转int myJson.setInt("int",100)myJson.setInt("int","200")
setLong(key,value) 修改节点 key:键值或者坐标 value:数字或字符串,强转long myJson.setLong("long",100)myJson.setLong("long","200")
setFloat(key,value) 修改节点 key:键值或者坐标 value:数字或字符串,强转float myJson.setFloat("long",5.0)myJson.setLong("long","100.2")
setBool(key,value) 修改节点 key:键值或者坐标 value:布尔值 myJson.setBool("bool",true)
setString(key,value) 修改节点 key:键值或者坐标 value:字符串或者数字,强转string myJson.setString("string","value") myJson.setString("string",33333)
size() 自身是数组,获取数组长度 myJson.size()
toJsonString() 将当前对象序列化成Json字符串 var jsonStr = myJson.toJsonString()

例子:

  1. function main(parm)
  2. {
  3. var myJson = new Json();
  4. myJson.add("tony","age 18");
  5. myJson.add("lily","age 17");
  6. var jsonArr = myJson.addArray("array");
  7. jsonArr.push("111");
  8. jsonArr.push("222");
  9. var newJson = myJson.addObject("obj");
  10. newJson.add("key","value");
  11. var jsonStr = myJson.toJsonString();
  12. print jsonStr;
  13. var myJson2 = new Json(jsonStr);
  14. print myJson2.get("tony");
  15. print myJson2.get("lily");
  16. var jsonArr2 = myJson2.get("array");
  17. print "jsonArr2 size:" + jsonArr2.size();
  18. for(var i = 0 ; i < jsonArr2.size() ; i++)
  19. {
  20. print "jsonArr2 " + i + ":" + jsonArr2.get(i);
  21. }
  22. var newJson2 = myJson2.get("obj");
  23. print newJson2.get("key");
  24. }

结果:

  1. {"tony":"age 18","obj":{"key":"value"},"lily":"age 17","array":["111","222"]}
  2. age 18
  3. age 17
  4. jsonArr2 size:2
  5. jsonArr2 0:111
  6. jsonArr2 1:222
  7. value