关于FLASH与XML交互应用中的理解_Flash As

一、书写标准的XML需要注意以下几点:
一个标准的XML文档必须要在第一行以"<?xml>"开头,以及一个"<?/>"结尾,其中开头部分需申明XML的版本,如:version="1.0",也应包含一个关于编码的声明:“encoding="utf-8"”; 
XML要求所有的标签必须在文档结束之前被闭合,如果标签中包含内容,则必须写成“<标签名>内容</标签名>"的格式,如果内容为空,则应写在</标签名>的格式;即,后面必须有</XXX>这种格式的。 
每个XML都有有一个根元素,也叫根节点。 
节点有节点值和属性。 
XML的节点值如果出现与XML标签关键字一样的字符,XML将会无法解析文档,比如,某个节点值如果是一个大于或者小于号,就会让解释器产生一个错误。
二、在FLASH中创建一个简单的实例:

//创建一个新的XML类实例
var my_XML:XML=new XML();
//创建一个TextArea组件,用于显示此XML内容
var my_TextArea:mx.controls.TextArea;
//加载外部XML文件
my_XML.load("my_xml.xml");
//为load函数定义onLoad函数---此处是必须的。只有当加载成功后,才能控制XML。否则不能。
my_XML.onLoad=function(ok:Boolean){
if(ok){
my_TextArea.text+=this;
}else{
my_TextArea.text+="加载失败..."
}
}
//忽略空白:
my_XML.ignoreWhite=true;
三、关于FLASH解析XML详解,说白了,也就是对节点的读取。

首先,来看看这幅图,稍微加点印象。


下面,我将对XML文件的解析方面做详细的介绍。
为了便于讲解,在此,我举一个简单的例子。

1、新建一个记事本文件,在里面输入如下内容:

<购买物品>
<衬衣 颜色="白色" 品牌="雅戈尔">1件</衬衣>
<裤子 颜色="深蓝" 品牌="王子裤">2件</裤子>
<鞋子 颜色="黑色" 品牌="红蜻蜓">3双</鞋子>
<总花费金额>
<打的费>50元</打的费>
<货物金>1000元</货物金>
</总花费金额>
</购买物品>
然后保存为"goods.xml",注意,在编码处,要选择"Unicode"。

2、下面,就对里面的各项值进行解读。
读取整个XML文件的方法:
在刚才的XML的同级目录下新建一FLA文件,然后在场景中放置一TextArea组件。并赋实例名“my_TextArea”,
然后在第一帧中添加如下代码:

复制代码 代码如下:

var my_XML:XML=new XML(); 
System.useCodepage=true; 
var my_TextArea:mx.controls.TextArea; 
my_XML.load("goods.xml") 
my_XML.onLoad=function(ok:Boolean){ 
if(ok){ 
my_TextArea.text+=this; 
}else{ 
my_TextArea.text+="加载失败" 

首先,我们来看看如何对XML中的节点名称或者节点属性进行读取呢?
比如,我们要读取如例子中的"购买物品"这几个字符,该如何操作呢?
我们使用如下语句:
this.firstChild.nodeName;
如果要读取"衬衣":
this.firstChild.childNodes[0].nodeName;
如果要读取"1条":
this.firstChild.childNodes[1].childNodes[0].nodeValue;
如果要读取裤子的品牌:
this.firstChild.childNodes[1].attributes.品牌;

将XML读取进LIST组件中:

System.useCodepage = true;
var my_TextArea:mx.controls.TextArea;
var my_List:mx.controls.List;
var my_XML:XML = new XML();
my_XML.ignoreWhite = true;
my_XML.load("shopping.xml");
my_XML.onLoad = function(ok:Boolean) {
  if (ok) {
    var childnodes = this.firstChild.childNodes;
    for (i=0; i<childnodes.length; i++) {
      my_List.addItem({label:childnodes.nodeName});
    }
  } else {
    my_TextArea.text += "加载失败";
  }
};
第一个节点:firstChild:
用法:this.firstChild;
最后一个节点:lastChild
用法:this.firstChild;
兄弟节点:nextSibling:
用法:this.firstChild.childNodes[0].nextSibling;
另一个兄弟节点:previousSibling:
用法:this.firstChild.childNodes[0].previousSibling;
区别:nextSibling是朝后,而previousSibling是当前之前;
父类节点:parentNode:
用法:this.firstChild.parentNode;

时间: 2024-09-15 23:58:40

关于FLASH与XML交互应用中的理解_Flash As的相关文章

完整简洁 Flash 处理XML 文档数据 教程 下篇_Flash As

实例4: 利用List组件做个mp3播放列表. 新建一个xml文档,在记事本中输入下面的代码,然后保存为 xml-004.xml. 复制代码 代码如下: <?xml version="1.0" encoding="gb2312"?>  <mp3List>      <mp3 path="jmzcg.mp3">阿桑-寂寞在唱歌</mp3>      <mp3 path="jmjywsl

jdbc-SpringMVC结构有没有可能在不基于XML的方式中与数据库发生交互?

问题描述 SpringMVC结构有没有可能在不基于XML的方式中与数据库发生交互? 小弟之前使用Sping框架的时候SQL语言都是写在XML中的,如: <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "-//ibatis.apache.org//DTD Mapper 3.0//EN" "http://ibatis.apache.org/dt

XML在语音中的应用

xml|语音 随着XML在工业界被广泛的采用,在不同的领域不同的行业,各自派生出了一些在一些特定领域适用的XML子集.在这一系列文章中中将要主要介绍的VoiceXML就是其中之一.它和WML的地位非常相似.WML是应用于无线上网中的特种语言,VoiceXML是应用于语音浏览的特种语言.无线上网(WAP)和语音浏览是现在网络发展的两大热点,XML在它们身上都找到了用武之地. 整篇文章将比较介绍XML在语音中应用的一些重要环节.除了VoiceXML之外,还会介绍一些XML在语音技术中应用的其他方面.

Flash处理XML文档数据教程

xml|教程|数据 准备:首先你得有台电脑,其次是要装上Windows系统和Flash8. XML基础: 既然是处理XML文档,就要先来了解下XML文档.下面是我所了解的,有些是在Flash中用不到的. XML扩展标记语言(Extensible Markup Language)是SGML(Structured Generalized Markup Language)的子集,由World Wide Web Consortium(W3C)的XML工作组定义. 下面开始了解XML的结构.XML是由序言

flash调用xml文件数据 程序代码

常见的问题时,我面对的使用新的编程语言在一个熟悉的编程环境,如闪光的是,我不知所措的新语法和创造性的解决方案,帮助两种语言互相沟通. Flash和XML的也不例外.如果您是在同一类别作为我来说,本教程的目的是与你记住.如果您不是在同一类别...好,你可能会仍希望本教程! 本教程将帮助您创建一个简单的,直截了当的例子,不偏离到不相干的职能,高效率的编码方法,等等如果这是您第一次尝试创建使用XML的东西在闪光,我相信这是更好地为您建立您的信任和创建一个简单的,例如工作,然后修改该例如在日益复杂的功能

《交互式程序设计 第2版》一1.2 交互领域中的编程

1.2 交互领域中的编程 这本书之所以名为<交互式程序设计>,是因为我们主要关注交互设计中要用到的编程知识,也就是用编程的手段,去创造用户能直接与之交互的应用.编程有很多种,其中有些技术和思维方法更适合用于服务器和数据库,而不是交互.而本书集中讨论的东西将是你用来建立用户和应用之间沟通的知识和技能.交互设计中的一大挑战是如何在你设计的作品和用户之间建立真正的交互. 1.2.1 交互的本质 那么,"交互"到底是什么呢?我们可以把它定义为双方或多方之间的信息交换.作家及电子游戏

让 Asp 与 XML 交互_应用技巧

让 Asp 与 XML 交互   标准,asp 是现在广为流传的web编程语言之一,能不能让他们 两个联合起来发挥作用呢?豆腐 在 这里 给大家 提供一个 很简单的 例子 关于XML 和 XSL 限于篇幅和知识水平 豆腐就不在这里 献丑了 下面首先来 说说 几个需要用到的文件的 内容 testXsl.xsl: <?xml version='1.0'?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl">

用Flash和XML来构造一个聊天室_XML/RSS

点击这里下载源文件 前面的教程我们介绍了Flash与XML结合使用的原理以及一个论坛的实现,下面我们继续结合Flash与XML来实现一个简单的聊天室,有在线聊天.在线人员名单.在线时间.简单的管理操作等功能.根据需要在此基础上稍作修改,就可以实现一个功能比较完备的聊天室了. 一.原理 用Flash和XML来构造聊天室,跟直接用Flash和Asp来构造聊天室的基本原理是一样的.都是先在Flash端发送一个XML请求到服务器端,然后等待从服务器端的XML返回值,当值返回Flash端后,解释所返回的X

交互设计中的5项视觉指导原则

  视觉是人的第一感观,它在影响用户行为方面起着决定性作用,视觉信息对产品的交互产生了深远影响. 来自UXPin的Jerry Cao,通过本文向我们解释了如何保持视觉与交互的协调. 我不想贬低文字的重要性,但也不想忽视视觉.两者是同等重要的交互设计元素.文字就是交互,但那些视觉元素(比如图标.菜单.图像等)才是用户实际上操作的东西.虽然有些可用性专家会提及Craigslist甚至Amazon,作为丑陋但可用(而且受欢迎)的网站案例.但毫无疑问,美感总会有所帮助. 情感是用户体验的关键:视觉设计优