Flex操作Json数据实例

[b][align=center][size=large]Flex操作Json数据实例[/size][/align][/b]
[size=medium][b]

首先介绍json格式:[/b][/size]

[size=small] json结构的格式就是若干个 键/值(key, value) 对的集合,该集合可以理解为字典(Dictionary),每个 键/值 对可以理解成一个对象(Object)。 键/值 对中的 键(key) 一般是 一个string,值(value)可以是string、double、int等基本类型,也可以嵌套一个 键/值 对,也可以是一个数组,数组里面的数据的类型可以是基本类型,或者 键/值 对。[/size]

var testJson = {                      
"Name" : "奥巴马" ,
"ByName" : ["小奥","小巴","小马"],
"Education" : {
"GradeSchool" : "华盛顿第一小学",
"MiddleSchool" : ["华盛顿第一初中" , "华盛顿第一高中"],
"University" : {
"Name" : "哈佛大学",
"Specialty" : ["软件工程","会计"]
}
}
}


[size=small]变量testJson就是一个json对象,testJson对象包括三个 键/值 对。

第一个 键/值 对: 键(key)是"Name“ ,其对应的值(value)是 "奥巴马" ,即 testJson["Name"] == "奥巴马"

第二个 键/值 对: 键 是 "ByName" ,值是一个数组,是一个string集合。有必要的话,数组里面的元素也可以是 键/值 对。

第三个 键/值 对: 键 是 "Education",值是一个 Json对像,该json对象包括三个 键/值 对,这就是嵌套了。。。

总结:json对象就是若干个 键/值 对的集合,键是string,值可以是基本类型,或者嵌套一个Json对象,或者是一个数组(数组里的元素可以是基本类型,也可以是json对象,可以继续嵌套)。

获取名字:testJson["Name"]

获取第一个别名:testJson["ByName"][0] 。testJson的 键"ByName" 对应的值 是一个string数组

获取小学名字: testJson["Education"]["GradeSchool"] , 获取大学主修专业:testJson["Education"]["University"]["Specialty"][0][/size]


[b][size=large]java后台返回json数据代码省略了(下面只介绍Flex端操作java返回的Json格式数据例子)[/size][/b]
[size=small]下面是一个mxml页面调用后台成功后的json转换成ArrayCollection的实例:
注意:Flex操作JSON需要as3corelib库的支持你可以去[url]http://code.google.com/p/as3corelib/[/url]进行下载
并且选中项目单击右键选择“项目属性(Project Properties) ”构建路径(Flex Build Path)“ 选中"库路径(Library Path)标签" 单击“添加SWC(Add SWC)”进行浏览添加库文件。
[/size]


/****成功***/
protected function users_resultHandler(event:ResultEvent):void
{
//返回的数据
var result:String = event.result as String;

Alert.show(result);

//解码json格式数据并且转换成Array数组
var results_array:Array = JSON.decode("["+result+"]") as Array;

//生成ArrayCollection
var arrColl:ArrayCollection = new ArrayCollection(results_array);

}


上面代码是调用了后台返回json格式数据之后使用
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值