Detailed introduction to the application of XML in FLASH

黄舟
Release: 2017-03-23 17:07:49
Original
1533 people have browsed it

Click here to browse the Flash Tutorial column Regarding the application of XML in FLASH, I have written several articles before. I also collected several articles from the Internet. However, they are all very simple and commonly used ones. Here, I summarize other related explanations of XML. If there are any shortcomings, I hope everyone can complement each other. Just for a common purpose: to improve together. 1. Requirements for writing standard XML Click here to browse the Flash Tutorial column Regarding the application of XML in FLASH, I have written several articles before. I also collected several articles from the Internet. However, they are all very simple and commonly used ones. Here, I summarize other related explanations of XML. If there are any shortcomings, I hope everyone can complement each other. Just for a common purpose: to improve together.
1. When writing standard XML, you need to pay attention to the following points:

  1. list

  2. - paddingleft-2">

  3. A standard XML document must start with "" on the first line and end with "" , the beginning of which needs to declare the XML version, such as: version="1.0", and should also include a statement about encoding: "encoding="utf-8""; XML requires that all tags must be closed before the end of the document. If the tag contains content, it must be written in the format of "content". If the content is empty, it should be written in The format of ; that is, it must be followed by . Every XML has a root element, also called the root node. Nodes have node values ​​and attributes. If the XML node value contains the same characters as XML tag keywords, XML will not be able to parse the document. For example, if a node value is a greater than or less than sign, the interpreter will generate an error.

2. Create a simple instance in 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;
Copy after login

3. Detailed explanation on FLASH parsing XML, To put it bluntly, it is the reading of nodes.
First of all, let’s take a look at this picture and add a little impression.


Below, I will give a detailed introduction to the parsing of XML files.
For the convenience of explanation, here I give a simple example.

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 ="加载失败"
}
}
按CTRL ENTER测试,即可以看效果。
首先,我们来看看如何对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;
Copy after login

The above is the detailed content of Detailed introduction to the application of XML in FLASH. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!