flash可以读取的XML文件有两种
第一种是-----------------------------------------
<?xml version="1.0" encoding="UTF-8"?>
<books clss = "类别" na ="书名" author= "作者" pub="出版社">
<book>
<clss>计算机</clss>
<na>thinking in java</na>
<author>dou</author>
<pub>机械工业</pub>
</book>
<book>
<clss>外语</clss>
<na>朗文英语词典</na>
<author>dou</author>
<pub>商务印书馆</pub>
</book>
</books>
--------------------------
对应的程序是:
var myXML:XML = new XML()
myXML.ignoreWhite = true
myXML.load("ce-1-11-8.xml")
myXML.onLoad = function(success:Boolean) {
if (success) {
var rootNum:Number = myXML.firstChild.childNodes.length;
var rootfirstChildNum:Number = myXML.firstChild.firstChild.childNodes.length;
trace("第一个节点有 "+rootNum+"个节点")
trace("第一个节点的第一个节点有 "+rootfirstChildNum+"个节点")
trace("******************************")
for(i=0;i<rootfirstChildNum;i++){
var mmXML= myXML.firstChild.firstChild.childNodes[i].firstChild
trace(mmXML.nodeValue)
}//end for
//var m0XML= myXML.firstChild.firstChild.childNodes[0].firstChild
} else {
trace("Unable to load XML")
}//end if
}//end function
-------------------------
输出是
第一个节点有 2个节点
第一个节点的第一个节点有 4个节点
******************************
计算机
thinking in java
豆豆
机械工业
************************************************
第二种是-----------------------------------------
<?xml version="1.0" encoding="UTF-8"?>
<books clss = "类别" na ="书名" author= "作者" pub="出版社">
<book clss= "计算机" na="thinking in java" author="豆豆" pub="冰豆出版社"/>
<book clss= "植物" na="植物组织培养" author="豆豆" pub="冰豆出版社"/>
</books>
--------------------------
对应的程序是
var myXML:XML = new XML();
myXML.ignoreWhite = true;
myXML.load("ce-2-11-8.xml");
myXML.onLoad = function(success:Boolean) {
if (success) {
var rootNum:Number = myXML.firstChild.childNodes.length;
trace("第一个节点有 "+rootNum+" 个子节点")
var rootNode = myXML.firstChild.childNodes;
//trace(rootNode)
for(i=0;i<rootNum;i++){
var clss:String = rootNode[i].attributes.clss;
var na:String = rootNode[i].attributes.na
var author:String = rootNode[i].attributes.author
var pub:String = rootNode[i].attributes.pub
trace(i+" node类别 "+clss)
trace(i+" node书名 "+na)
trace(i+" node作者 "+author)
trace(i+" node出版社 "+pub)
}
} else {
trace("Unable to load XML");
}//end if
}//end function
----------------------------------
其中第二种格式,在flash中输出的是:
第一个节点有 2 个子节点
0 node类别 计算机
0 node书名 thinking in java
0 node作者 豆豆
0 node出版社 冰豆出版社
1 node类别 植物
1 node书名 植物组织培养
1 node作者 豆豆
1 node出版社 冰豆出版社
===========================================
【总结】网络上有很多的教程,偶在学习的时候按原样拿人家的东东,可是就是做不出来,而且有很多的大虾采用第二种方式,也就是读取xml的属性的方式。在我看来,第一种方式比较好,因为可以和其他的后台程序互通。
第一种是-----------------------------------------
<?xml version="1.0" encoding="UTF-8"?>
<books clss = "类别" na ="书名" author= "作者" pub="出版社">
<book>
<clss>计算机</clss>
<na>thinking in java</na>
<author>dou</author>
<pub>机械工业</pub>
</book>
<book>
<clss>外语</clss>
<na>朗文英语词典</na>
<author>dou</author>
<pub>商务印书馆</pub>
</book>
</books>
--------------------------
对应的程序是:
var myXML:XML = new XML()
myXML.ignoreWhite = true
myXML.load("ce-1-11-8.xml")
myXML.onLoad = function(success:Boolean) {
if (success) {
var rootNum:Number = myXML.firstChild.childNodes.length;
var rootfirstChildNum:Number = myXML.firstChild.firstChild.childNodes.length;
trace("第一个节点有 "+rootNum+"个节点")
trace("第一个节点的第一个节点有 "+rootfirstChildNum+"个节点")
trace("******************************")
for(i=0;i<rootfirstChildNum;i++){
var mmXML= myXML.firstChild.firstChild.childNodes[i].firstChild
trace(mmXML.nodeValue)
}//end for
//var m0XML= myXML.firstChild.firstChild.childNodes[0].firstChild
} else {
trace("Unable to load XML")
}//end if
}//end function
-------------------------
输出是
第一个节点有 2个节点
第一个节点的第一个节点有 4个节点
******************************
计算机
thinking in java
豆豆
机械工业
************************************************
第二种是-----------------------------------------
<?xml version="1.0" encoding="UTF-8"?>
<books clss = "类别" na ="书名" author= "作者" pub="出版社">
<book clss= "计算机" na="thinking in java" author="豆豆" pub="冰豆出版社"/>
<book clss= "植物" na="植物组织培养" author="豆豆" pub="冰豆出版社"/>
</books>
--------------------------
对应的程序是
var myXML:XML = new XML();
myXML.ignoreWhite = true;
myXML.load("ce-2-11-8.xml");
myXML.onLoad = function(success:Boolean) {
if (success) {
var rootNum:Number = myXML.firstChild.childNodes.length;
trace("第一个节点有 "+rootNum+" 个子节点")
var rootNode = myXML.firstChild.childNodes;
//trace(rootNode)
for(i=0;i<rootNum;i++){
var clss:String = rootNode[i].attributes.clss;
var na:String = rootNode[i].attributes.na
var author:String = rootNode[i].attributes.author
var pub:String = rootNode[i].attributes.pub
trace(i+" node类别 "+clss)
trace(i+" node书名 "+na)
trace(i+" node作者 "+author)
trace(i+" node出版社 "+pub)
}
} else {
trace("Unable to load XML");
}//end if
}//end function
----------------------------------
其中第二种格式,在flash中输出的是:
第一个节点有 2 个子节点
0 node类别 计算机
0 node书名 thinking in java
0 node作者 豆豆
0 node出版社 冰豆出版社
1 node类别 植物
1 node书名 植物组织培养
1 node作者 豆豆
1 node出版社 冰豆出版社
===========================================
【总结】网络上有很多的教程,偶在学习的时候按原样拿人家的东东,可是就是做不出来,而且有很多的大虾采用第二种方式,也就是读取xml的属性的方式。在我看来,第一种方式比较好,因为可以和其他的后台程序互通。

| Tags (标签) | 引用通告地址 (0) |
| Tags: Flash | Xml |
http://www.gogogo8.com/ver2/Blog/trackback.asp?tbID=75 http://www.gogogo8.com/ver2/Blog/trackback.asp?tbID=75&CP=GBK |


动画制作
作者: 












