`
it_liuyong
  • 浏览: 100547 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

as3 json应用

    博客分类:
  • flex
 
阅读更多
近发现有不少通过“AS3 json”关键词搜索过来的朋友,可见还是有很多朋友对这方面关注的。不过现下有关AS3 JSON的文章是少之又少,网上搜索到的基本上也都是那同样的几篇文章转来转去罢了,也包括我之前那篇,也没什么例子。相信会让很多初学的朋友看得云里雾里的,其实我也觉得奇怪,json其实也算蛮简单的,怎么就没人写篇好的教程呢。废话就不多说了,希望转载的朋友能注明一下出处,谢了。

首先,你需要有一个JSON的类库,建议去下载adobe官方提供的产品外类库:as3corelib。类库的使用就不多说了,大家应该都知道。

先说说获取数据。可以这么说,只要你懂AS3与XML的交互,那么就一定能懂JSON,因为两者几乎是一样的,你唯一需要做的只是了解一下JSON的格式。例如下面这个JSON的例子,就像XML一样,你可以通过任何动态页面来生成这个格式,也可以通过静态的甚至TXT来读取也行。

1
2
3
4
[{"name":"Hans","age":"32"},
{"name":"John","age":"12"},
{"name":"Zaki","age":"34"},
{"name":"Dr. Cox","age":"88"}]

AS中的代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
package {
import com.adobe.serialization.json.JSON;

import flash.display.Sprite;
import flash.events.Event;
import flash.net.URLLoader;
import flash.net.URLRequest;

public class getJSON extends Sprite {
  public function getJSON() {
   var loader:URLLoader = new URLLoader();

   loader.load(new URLRequest( "http://127.0.0.1/json.php" ));//这里是你要获取JSON的路径
   loader.addEventListener(Event.COMPLETE, decodeJSON);
  }
  private function decodeJSON(evt:Event):void {
   var persons:Array = JSON.decode( URLLoader( evt.target ).data );
   //在这里,就可以通过操作数组来应用数据了,很方便
   for (var i=0; i<persons.length; i++) {
    trace( persons[i].name );
   }
  }
}
}

是不是很简单呢?在这里我们只用到了decode()这个方法,其实JSON类库要用的也只有两个方法,另一个就是马上要用到的encode()。大家可以理解为编码与解码。发送数据的代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
package {
import com.adobe.serialization.json.JSON;

import flash.display.Sprite;
import flash.events.Event;
import flash.net.*;

public class sendJSON extends Sprite {
  public function sendJSON() {
   var arr : Array = new Array({"name":"Hans","age":"32"},{"name":"John","age":"12"},{"name":"Zaki","age":"34"},{"name":"Dr. Cox","age":"88"});//这里是要发送的数据,可以直接写,也可以是由其他方法生成,不过要注意格式。
   sendjson( arr );
  }
  private function sendjson( a : Array ):void {
   var jsonString : String = JSON.encode(a);

   var urlVariables:URLVariables = new URLVariables();
   urlVariables.json = jsonString;

   var urlRequest:URLRequest = new URLRequest(http://127.0.0.1/json.php); //这里是接收数据的动态页。
   urlRequest.method = URLRequestMethod.POST;
   urlRequest.data = urlVariables;

   //其实到这已经结束了,下面的XML只是测试结果而已。
   var urlLoader:URLLoader = new URLLoader();
   urlLoader.addEventListener(Event.COMPLETE, onURLLoaderCompleteEvent);
   urlLoader.load(urlRequest);
  }
  private function onURLLoaderCompleteEvent( evt : Event ):void {
   var xml:XML = new XML(evt.target.data);
   trace(xml);
  }
}

分享到:
评论

相关推荐

    as3json资源

    开发者可以通过查看这些源代码学习如何在AS3中解析和生成JSON,例如使用`JSON.parse()`方法将JSON字符串转换为AS3对象,或者用`JSON.stringify()`方法将AS3对象转换为JSON字符串。 在实际开发中,JSON的使用场景...

    AS3 JSON 包

    在ActionScript 3(AS3)中,JSON同样扮演着重要的角色,使得AS3可以方便地与服务器进行数据交互,尤其是在Flash或Flex开发中。 在AS3中,处理JSON主要依赖于`flash.utils.ObjectProxy`和`flash.utils.JSON`这两个...

    as3 解析 json

    本篇文章将深入探讨如何在AS3中解析JSON对象,以便在应用程序中使用这些数据。 一、JSON的基本结构与类型 JSON基于JavaScript语法,主要由键值对组成,键用引号包围,值可以是字符串、数字、布尔值、数组、null或...

    as3读取json实例

    AS3是Adobe Flash Player和Adobe AIR应用程序的基础,它提供了一种强大的方式来处理JSON数据,这对于网络应用的数据交互至关重要。 JSON(JavaScript Object Notation)是一种文本格式,易于人阅读和编写,同时也...

    as3corelib.swc及解析json的例子

    在本文中,我们将深入探讨如何在Flex 4.5中使用as3corelib库来解析JSON数据。...通过灵活地使用as3corelib,你可以轻松地在Flex 4.5应用程序中实现JSON的序列化和反序列化,从而提高开发效率和代码可维护性。

    AS3 加载 JSON 数据

    在实际应用中,你可以参考这些文件来构建你的AS3 JSON加载和解析功能。 总之,AS3加载和解析JSON数据是通过`URLLoader`和`JSON.parse()`方法实现的。确保正确处理加载事件和错误,以及正确解析和使用加载的JSON数据...

    as3 json 包(com/adobe/json)

    这个包提供了在AS3环境中处理JSON数据的能力,使得开发者可以方便地将JSON格式的数据转换为AS3对象,或者将AS3对象转换为JSON字符串。 在ActionScript 3中,JSON是一种常见的数据交换格式,特别是在与服务器进行...

    as3.0 json air

    JSON在AS3.0中的使用通常涉及到序列化和反序列化,即将AS3的对象转换为JSON字符串以便在网络上传输,或者将接收到的JSON字符串解析回AS3的对象。这个工具包可能包含以下关键组件: 1. **JSON解析器**:这是一个类,...

    在Flex中的Json应用

    Flex中的JSON应用主要涉及到使用ActionScript 3(AS3)处理JSON数据,这是一种轻量级的数据交换格式,常用于Web服务与客户端之间的通信。在Flex开发中,由于Flex是基于AS3的,所以理解如何在Flex中使用JSON至关重要...

    ActionScript3中的JSON编码解码包

    在ActionScript3(AS3)中,JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,它允许开发者以文本形式存储和传输数据。JSON因其简单、易读、易解析的特性,在网络通信中被广泛使用。这个...

    as3corelib-.92.11.rar_as 3 corelib_as3_as3corelib_as3corelib API

    5. JSON解析:AS3CoreLib提供了`JSON`类,可以方便地将AS3对象转换为JSON字符串,以及将JSON字符串解析回AS3对象。这使得AS3与JavaScript或其他支持JSON格式的语言之间的数据交换变得更加简单。 6. 字符串处理:AS3...

    json类 AS3.0可用

    `JSON`类提供了静态方法来解析JSON字符串到AS3对象,以及将AS3对象转换为JSON字符串。`JSONEncoder`则用于将ActionScript对象编码为JSON格式,但这个类不是内置的,通常需要引入第三方库。 1. **解析JSON字符串** ...

    VB解析JSON

    而JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,因其易于人阅读和编写,同时也易于机器解析和生成,被广泛应用于Web服务和客户端数据交换。在VB中解析JSON是一项重要的技能,特别是对于那些需要...

    VB解析JSON案例

    3. 解析JSON字符串到VB对象: ```vb Dim jsonString As String = "{""name"":""John"",""age"":30,""city"":""New York""}" Dim person As Person = JsonConvert.DeserializeObject(Of Person)(jsonString) ``` `...

    模仿BeJSON,HiJson格式化JSON,在AS控制台分层输出接口日志

    3. **控制台颜色标记**:为了提高可读性,我们可以使用ANSI转义码为不同级别的JSON键值对设置不同的颜色。比如,使用`\033[31m`设置红色,`\033[0m`恢复默认颜色。 4. **深度控制**:为了防止无限递归,我们需要...

    as3corelib-.92.1.zip_flex

    在本文中,我们将深入探讨 AS3CoreLib 的核心特性、JSON 类以及其在 Flex 开发中的应用。 首先,让我们了解 AS3CoreLib 是什么。AS3CoreLib 是由 Mike Chambers 和其他贡献者开发的一个开源项目,它提供了一系列的...

    VB6_Json解析代码

    通过这些代码,你可以深入理解如何在VB6中处理JSON,从而在不更新到更现代的编程语言或框架的情况下,使你的VB6应用程序具备与JSON数据交互的能力。这个技能在维护老项目或者需要兼容旧系统时非常有用。

    古诗内容提取json格式转jsonl

    with open('古诗.json', 'r') as f_in, open('古诗.jsonl', 'w') as f_out: for line in f_in: obj = json.loads(line) f_out.write(json.dumps(obj) + '\n') ``` 在这个例子中,`古诗.json`是输入的JSON文件,...

    as3corelib

    在AS3中,as3corelib提供了JSON对象,使得开发者能够轻松地在AS3和服务器之间进行数据交换,通常用于Web服务通信。 "flex"标签暗示了as3corelib与Flex框架的兼容性。Flex是一个开源的、基于MXML和AS3的开发框架,...

Global site tag (gtag.js) - Google Analytics