技術(shù)分享 如何在Flex中使用Json
本文和大家重點(diǎn)討論一下如何在Flex中使用Json,要在Flex中使用Json,首先要下一個(gè)Json包。希望本文的介紹能讓你有所收獲。
在Flex中使用Json
要用到Json,看了一篇(http://bbs.actionscript3.cn/thread-1657-1-1.html)的掃盲貼,在Flex中使用Json十分方便。Json是介于純文本方式與xml方式之間的一種格式,Json能做到的事情,xml完成可以做到。為什么要用Json呢,我看大部分還是像我一樣,不得不用。Json是ajax數(shù)據(jù)傳輸?shù)?**,現(xiàn)有的項(xiàng)目使用的已經(jīng)是Json,如果增加Flex界面時(shí)也使用Json,那改動(dòng)就會(huì)非常少。掃盲貼中說(shuō)出的三個(gè)理由,我覺(jué)得這一個(gè)最充分。
要在Flex中使用Json,首先要下一個(gè)Json包。是官方的,卻在官方怎么也載不下來(lái)。終于在CSDN上用了3分才down下來(lái)。放在附件中,需要的可以拿去用。
貼一個(gè)例子:
- <?xmlversionxmlversion="1.0"encoding="utf-8"?>
- <mx:Applicationxmlns:mxmx:Applicationxmlns:mx="http://www.adobe.com/2006/mxml"
- layout="absolute"
- creationComplete="init()">
- <mx:Script>
- <![CDATA[
- importcom.adobe.serialization.Json.*;
- privatevarJsonStr:String;
- privatevarJsonObj:Object;
- privatevarJsonObj2:Object;
- privatevarJsonStr2:String;
- internalfunctioninit():void{
- JsonStr='{"name":"zhanzhihu","age":22,"gender":"male"}';
- JsonObj=newObject();
- JsonObj=Json.decode(JsonStr);
- trace(JsonObj.name);
- JsonObj2=newObject();
- JsonObj2.firstName="bill";
- JsonObj2.lastName="Gate";
- JsonObj2.com="Microsoft";
- JsonStr2=Json.encode(JsonObj2);
- trace(JsonStr2);
- }
- ]]>
- </mx:Script>
- </mx:Application>
輸出為:
- zhanzhihu
- {"firstName":"bill","lastName":"Gate","com":"Microsoft"}
JsonStr是一個(gè)Json格式的字符串,用Json.decode(String)便可以將它解析為as對(duì)象,同樣用Json.encode(Object)可以將as對(duì)象轉(zhuǎn)為Json字符串,F(xiàn)lex前臺(tái)對(duì)Json的操作真是方便。
【編輯推薦】