2007-05-31

Flash处理XML文档数据教程

来源: 本站收集整理 作者:佚名 评论 0 条
 

预备:首先你得有台电脑,其次是要装上Windows系统和Flash8。

XML基础:

既然是处理XML文档,就要先来了解下XML文档。下面是我所了解的,有些是在Flash中用不到的。

XML扩展标记语言(Extensible Markup Language)是SGML(Structured Generalized Markup Language)的子集,由World Wide Web Consortium(W3C)的XML工作组定义。

下面开始了解XML的结构。XML是由序言和文档元素组成的。

序言包括:
1.声明(declaration):文档的第一行,它说明这是一个XML文档。 [可选]
2.注释:增强文档的可读性。 [可选]
3.文档类型声明 (document type declaration):XML文档类型定义必须在XML声明之后,文档元素之前,中间可以插入XML处理指令,它说明文档的类型和结构。[可选]
4.处理指令(processing instruction):在XML声明之后,处理XML信息的指令。 [可选]
注:文档类型声明(document type declaration)需要用到xml词汇表。假如想了解具体信息请访问

Actions层在第一帧中输入以下代码:

//xml-003.fla.
//使用系统编码.防止乱码.
System.useCodepage = true;
//实例化一个xml对象.
var myxml:XML = new XML();
//分析时忽略xml文档中的空格.
myxml.ignoreWhite = true;
//加载xml-002.xml文档.
myxml.load("xml-003.xml");
//调用XML.onLoad事件.
myxml.onLoad = function(success:Boolean)
{
//假如加载成功,success=true;否则success=false;
if (success) {
trace("加载成功!");
login_btn.onRelease = function()
{
//用一个数组来引用顶层节点中子级节点的数组.
var child_arr:Array = myxml.firstChild.childNodes;
//用UserData指定xml文档节点的attributes对象.
var UserData:Object;
//这个for遍历的是顶层节点下的子级节点.
for (var i = 0; i<child_arr.length; i ) {
//这个for遍历的是顶层节点下的子级节点下的子级节点.
for (var j = 0; j<child_arr[i].childNodes.length; j ) {
//用UserData指定child_arr[i].childNodes[j].attributes对象
UserData = child_arr[i].childNodes[j].attributes;
//判定用户名和密码.
//这里的UserData.username其实就是child_arr[i].childNodes[j].attributes.username的简写.UserData.password同理.
//username和password是xml文档节点中的属性.因为xml和Flash区分大小写.所以在输入时要注重大小写.
if ((username_txt.text == UserData.username) && (password_txt.text == UserData.password)) {
//Post这个是顶层节点下子级节点的Post属性.
status_txt.text = child_arr[i].attributes.Post ":" UserData.username "登录成功";
//假如用户名和密码正确就退出for.这个重要.假如不用这个,就会一直重复判定用户名和密码.直到将xml文档节点遍历完.那样就不是我们想要的.所以一有正确的就退出for;
return;
共3页: 上一页 1 [2] [3] 下一页

(本文仅表明作者个人观点,不代表本站及其管理员立场.) 推荐 收藏 投稿 打印 返回 关闭
上一篇:巧妙突破宽带运营商封锁建立自主Web服务器  
下一篇:Flash制作好看的影片指导进度条
    评论加载中…
 推荐文章
     

网站首页  -  网站地图 -   站长论坛  -  网站投稿  -    -  网站管理
Copyright © 2008 芜湖站长站 All Rights Reserved 皖ICP备07500611号