flash读取xml数据

程序代码

<?xml version = "1.0" encoding = "gb2312"?>

<list>

         <title>coco168</title>

         <url>http://www.baidu.com</url>

         <other>xiaohd</other>

</list>

简单说一下XML文档格式的书写规范:

第一行:是一个XML文档的描述信息.其中定义了该XML文档的一些基本属性,包括:版本信息(version),使用的字符编码(encoding)

第二行:(虽然在FLASH中我们用不到节点的任何属性,但是合式的XML文档必须要求一个根节点)

在XML文档中,这是一个根节点.XML规定所有标签必须有闭合.所以,在最后一行使用对应的标签来闭合.同样,单行的XML节点也需要闭合,例如:其中"/"符号就表示单行的节点闭合."title","url","other"是节点的属性,写法就是:属性名="属性值" 这样的名/值对.至于节点名和属性名都是可以自定义的,也就是说可以任意命名.但是还是建议要尽量规范

""节点是""的子节点,相应的""叫做""的父节点

在这个XML文档中有3个子节点,我们数据就存储在这3个子节点的属性中,分别有:title url other

我们要做的最终目的就是在FLASH中获取这些节点的属性值

FLASH 代码:

flash读取xml数据 - 小磊在线 - 小磊在线 程序代码

System.useCodepage = true;                    //中文

lemon_xml = new XML();                            //声明一个XML对象

lemon_xml.ignoreWhite = true;                  //忽略XML中的空白

lemon_xml.load("lemon.xml");                    //读取xml的路径

lemon_xml.onLoad = function(success)      //开始加载xml文件

{

    if(success)                                               //如果成功的话执行以下操作

         {

            UpdateInfo = lemon_xml.firstChild;   //读取进来的XML文件的firstChild是<list>

            Publish(UpdateInfo);

            delete lemon_xml;

            sb1.setScrollTarget(tf1);                   //使文本刷新后的scrollbar仍然可用

            sb2.setScrollTarget(tf2);

            sb3.setScrollTarget(tf3);

          }

    else {

            lemon1 = "Error loading XML...";

         }

}

function Publish(xml_doc)

{

    content = xml_doc.childNodes;                //这个content有点像一个数组用来存储<list>的子结点们

   lemon1=content[0].firstChild;                  //建立一个动态文本,变量名为lemon1

    lemon2=content[1].firstChild;

    lemon3=content[2].firstChild;

}

其实在flash中用xml变量做为按钮的链接没想象中那么麻烦,只要在以上代码中把变量做好,就可以了,“lemon2=content[1].firstChild; ”中,content[1].firstChild; 读取的就是http://www.baidu...,所以,只要在按钮上写上以下代码就可以了

on(release){

   getURL(lemon2,"_blank");

posted @ 2014-02-28 10:30  wenlong  阅读(680)  评论(0编辑  收藏  举报