`

XML 的其他使用

 
阅读更多
【URLLoader.dataFormat的三种类型】

URLLoader.dataFormat的可选值是:

flash.net.URLLoaderDataFormat.BINARY

flash.net.URLLoaderDataFormat.TEXT

flash.net.URLLoaderDataFormat.VARIABLES

当dataFormat是BINARY时,URLLoader.data属性就是flash.utils.ByteArray类型;

当dataFormat是TEXT时,URLLoader.data属性就是String类型;

当dataFormat是VARIABLES时,uRLLoader.data属性就是Object类型.

 
【在XML内使用动态数据】

把变量放在大括号({和})内:

var userName:String = "Youthoy";

var myXML:XML = <person><userName>{userName}</userName></person>;

 
【新增一个节点元素】

//例子一:

var example:XML = <person/>;

example.father = <father/>; //内容属性和元素名称不一定要相同,也可以: example.abc = <father/>,但会以元素名称为准,即会建立一个<father/>元素

trace(example);

/*

输出:

<person>

  <father/>

</person>

*/

//例子二:

var example:XML = <person/>;

example.father = ""; //建立一个<father/>元素

trace(example.toString());

/*

输出:

<person>

  <father/>

</person>

*/

//例子三:

var example:XML = <person/>;

var id:int = 10;

example["user" + id] = "";

trace(example);

/*

输出:

<person>

  <user10/>

</person>

注意: 有些情况必须使用第三种情况.例如,元素节点名称内含连字符("-")是完全合法的,但在ActionScript里会得到编译器错误:

example.some-element = ""; //产生编译器错误

正确的写法是:

example["some-element"] = "";

*/

 
【新增属性】

var example:XML = <person/>;

example.element = "";

example.element.@name = "Youthoy";

example.element.@["bad-variable-name"] = "yes";

example.element.@other = ["riahome.cn", undefined, true, 44, null];

var id:int = 44;

example.element.@["user" + id] = "love";

trace(example);

/*

输出:

<person>

  <element name="Youthoy" bad-variable-name="yes" other="riahome.cn,,true,44," user44="love"/>

</person>

*/

 
【向XML插入文字元素和节点元素】

//在指定元素前和后插入,在最前端和尾端插入

var example:XML = <person/>;

example.two = "";

example.insertChildBefore(example.two, <one/>); //在two节点前插入one节点

example.insertChildBefore(example.two, "在two节点前插入文字");

example.insertChildAfter(example.two, <three/>); //在two节点后插入three节点

example.prependChild(<start/>); //在最顶端插入start节点

example.appendChild(<end/>); //在尾端插入end节点

example.start = "start内容"; //向节点增加内容

trace(example);

/*

输出:

<person>

  <start>start内容</start>

  <one/>

  在two节点前插入文字

  <two/>

  <three/>

  <end/>

</person>

*/

 
【把XML实例的内容属性转换为任何可以转换成字符串的内容】

//先把等号右边转为可以转换的字符串

var example:XML = <person/>;

example.one = "one";

example.two = new URLLoader();

example.three = new Sprite();

example.four = new Boolean; //Boolean对象的值初始化为false

example.five = new Number();

example.six = new String();

example.seven = {a:"Youthoy", b:true, c:undefined};

example.eight = ["three", undefined, true, 44, null];

/*

输出:

<person>

  <one>one</one>

  <two>[object URLLoader]</two>

  <three>[object Sprite]</three>

  <four>false</four>

  <five>0</five>

  <six/>

  <seven>[object Object]</seven>

  <eight>three,,true,44,</eight>

</person>

*/

 
【对XML属性层层递归的算法】

var example:XML = <menu>

                    <menuitem label="File">

                      <menuitem label="New"/>

                      <menuitem label="Save"/>

                    </menuitem>

                    <menuitem label="Help">

                      <menuitem label="About"/>

                    </menuitem>

                  </menu>;

walk(example);

function walk(node:XML):void {

for each(var element:XML in node.elements()) {

    trace(element.@label);

    walk(element);

}

 
【读取文字节点及其值】

var example:XML = <menu>

                    My name is Youthoy.

                    <myName>Youthoy</myName>

                  </menu>;

example.text(); //输出: My name is Youthoy.

example.myName.toXMLString(); //输出: <myName>Youthoy</myName>

//以下三行都输出: Youthoy

example.myName.toString();

example.myName.text();

example.myName;

 
【递归元素属性时读取属性名与其值】

var example:XML = <person name="Youthoy" age="21"/>;

    for each(var i:XML in example.attributes()) {

    trace(i.name() + "=" + i);

}

/*

输出:

name=Youthoy

age=21

*/

另类方法:

var example:XML = <person name="Youthoy" age="21"/>;

trace(example.@*[1]); //输出: 21

 
【不论层级地访问整个XML中指定的节点或属性】

使用后代存取器运算符..

例子1(对于节点元素):

var example:XML = <a>

                    <z>I am z.</z>

                    <b>

                     <c></c>

                     <z>I am z.</z>

                   </b>

                 </a>;

trace(example..z.text()); //输出: I am z.I am z.

例子2(对于属性):

var example:XML = <person>

                    <a>

                      <item name="Youthoy" age="21"/>

                    </a>

                    <item name="Jimpa" age="21"/>

                  </person>

trace(example..@name); //输出: YouthoyJimpa

分享到:
评论

相关推荐

    TinyXML2简单使用例程

    可以使用 `InsertEndChild()` 方法将元素添加到其他元素下,使用 `SetAttribute()` 设置属性: ```cpp XMLElement* child = doc.NewElement("ChildElement"); child-&gt;SetAttribute("name", "Example"); root-&gt;...

    在web.xml中引入其他xml配置文件的步骤

    ### 在web.xml中引入其他XML配置文件的步骤 在Java Web开发中,`web.xml`作为Web应用程序的核心配置文件,负责定义应用级别的配置信息。为了提高代码的可维护性和复用性,有时需要将一部分配置内容提取到独立的XML...

    QT使用TinyXML开源库解析XML文件

    1. **下载和解压TinyXML**:从TinyXML的官方网站或者其他可靠的源下载最新版本的TinyXML库,解压缩后得到头文件(如tinyxml.h)和源文件(如tinyxml.cpp)。 2. **添加TinyXML到QT项目**:将这些文件复制到你的QT...

    C/C++使用tinyxml读写XML文档

    内附样例程序,不过最好还是到网上搜搜其他人的例子(PS:如果你不想看源码的话),网上发部的例子都是new了xmldocumen对象,(添加的元素节点都是以new的方式)却没有释放,这个只要在xmldocument使用后,...

    C# LinqXML使用LINQ技术对XML文件进行读取

    本文将详细介绍如何使用C#的LinqXML技术对XML文件进行读取。 首先,我们需要引入必要的命名空间。在C#代码中,确保包含了以下导入语句: ```csharp using System; using System.Linq; using System.Xml.Linq; ``` `...

    pugixml读写XML示例

    此外,pugixml还支持其他高级功能,如XPath查询、XML序列化与反序列化以及内存管理。例如,使用XPath表达式查找特定节点: ```cpp pugi::xpath_node_set nodes = doc.select_nodes("/rootElement/nodeToFind"); for ...

    TinyXml源码和使用说明

    TinyXml使用总结中的文件可能包括了一些实际使用案例、注意事项和常见问题解答。例如,如何处理命名空间、空格和换行、错误检查以及优化性能等。在实际开发中,这些经验总结可以帮助我们更好地理解和使用TinyXml,...

    html XML使用大全

    1.3.3 浏览器和其他工具... 15 1.3.4 处理过程总结... 15 .4 相关技术... 17 1.4.1 超文本标记语言(Hypertext Markup Language)... 17 1.4.2 级联样式单(Cascading Style Sheets)... 17 1.4.3 可扩展的样式语言...

    使用Linq To XML操作XML.pdf

    标题:"使用Linq To XML操作XML" 描述:"使用Linq To XML操作XML"是一篇详细介绍如何运用Linq To XML技术来高效操作XML文件的文章。Linq To XML是一种强大的API,它简化了创建、浏览和访问XML数据的过程。通过本文...

    xml使用指南

    以下是XML使用的一些关键知识点: 1. **XML基础概念**:XML是一种自定义标记语言,与HTML类似但不相同。XML标签没有预定义,用户可以自定义标签来表示数据。例如,`&lt;book&gt;`和`&lt;author&gt;`标签可用于书籍数据。 2. **...

    XML课件XML课件

    在本“XML课件”中,我们可以期待学习到XML的基础知识、语法特性、以及如何在实际应用中使用XML。 首先,XML的基本概念是关键。XML文档由元素(Elements)构成,每个元素都有可能包含其他元素或者数据。元素通过...

    共享如何使用C#开发使用XML文件

    此外,C#还提供了其他方法来处理XML,如XPath查询和XSLT转换。XPath允许我们定位XML文档中的特定节点,而XSLT则可以用来转换XML文档的结构。 在实际开发中,我们需要根据具体需求选择合适的XML处理方式。对于小规模...

    XML学习心得分享XML学习心得分享

    * Apache Xerces:为Java语言预设使用的XML剖析器 * Oracle XML Parser:为Oracle公司提供的XML剖析器 * The Expat XML parser:用C语言开发的XML剖析器 XML验证及编辑工具包括: * XML编辑器:用于编辑XML文档的...

    DBMS_XMLDOM DBMS_XMLPARSER DBMS_XMLQUERY 文档

    XPath是XML路径语言,用于选取XML文档中的节点,而XSLT则是一种转换语言,用于将XML文档转换为其他格式,如HTML或另一个XML文档。DBMS_XMLQUERY的getXML()函数可以获取XML数据,而processXML()函数则可以执行XSLT...

    matlab读取XML,XML转换为matlab

    在实际使用中,结合Matlab的其他工具箱和功能,XML Toolbox可以有效地处理XML数据,实现跨平台的数据共享和复杂的数据分析任务。通过深入理解这些函数的工作原理和用法,用户能够更好地利用XML在Matlab中的强大功能...

    xml手册xml手册xml手册

    在实际应用中,XML常常与XSLT(eXtensible Stylesheet Language Transformations)结合使用,XSLT可以将XML文档转换成其他格式,如HTML或PDF,以满足不同的显示需求。此外,XPath是XML的一个查询语言,用于选取XML...

    java中使用xslt转换xml成为另一个xml

    本文将详细介绍如何在Java中使用XSLT来实现XML到XML的转换。 首先,理解XML和XSLT的基本概念: 1. XML:XML是一种结构化数据存储格式,它定义了数据的结构和规则,使数据具有自我描述性,易于解析和交换。 2. XSLT...

    PB 使用sql语句直接生成XML文本

    标题中的“PB 使用sql语句直接生成XML文本”是指在PowerBuilder(PB)环境中,通过编写SQL查询来生成XML格式的文本数据。这种方法对于需要将数据库中的数据转换为XML格式,以便于数据交换、报告生成或者接口通信的...

    pugixml 一个很好用的XML类

    1. `xml_document`:表示整个XML文档,它是所有其他节点的根节点。 2. `xml_node`:表示XML文档中的节点,可以是元素、文本、注释、处理指令或文档类型声明。 3. `xml_attribute`:表示XML元素的属性,每个属性由...

    VB6 使用XML

    XML文档通常由一个根元素和多个子元素构成,每个元素可以包含属性和其他子元素。例如,在给定的部分内容中,可以看到这样的结构: ```xml &lt;FirstName&gt;Andy &lt;LastName&gt;Fickle &lt;Street&gt;1234 Programmer Place ...

Global site tag (gtag.js) - Google Analytics