[as3工具类]XML数据直接转换成as3类
平时做游戏开发的时候,很大程度上都会采用xml来做配置文件。有时候需要写很多,然后又需要依次去解析。如果有一个工具来自动解析每一个xml,并且提取出自己需要的数据,多好呀。所以偷了个懒,写了一个解析一定格式的xml和解析类,把这个格式丢给策划自己去调整数据啦。同时自己这边只需要接受现成的类
注意,这里的指的类,一般是自定义的数据结构(类似javaBean,使用的都是属性值)。这样通过访问有数据类型定义的类,比直接访问xml的属性来得方便多了,而且也省了数据类型的转换的麻烦
(当然,这里只是开了个头,需要做好的地方还有很多,也包括其他的文件,例如csv等)
先看一下程序:
package
{
import flash.display.Sprite;
import flash.system.ApplicationDomain;
import org.sujun.utils.XMLUtils;
import test.TestBean;
import test.TwoBean;
public class TestXML extends Sprite
{
//反射需要用到,所以必须先声明
private var testBean :TestBean;
private var twoBean :TwoBean;
//xml文件。这里为了方便,直接写在代码里,实际可以从外部加载
private var xml :XML =
<testBean type="class" path="test.TestBean">
<!-- 注意,字符串,数值类型是可以不设置type的 -->
<attribute name="name" value="sodaChen" />
<attribute name="age" value="18" />
<attribute name="flag" type="Boolean" value="true" />
<!-- 数组内容描述 -->
<attribute name="urls" type="array" >
<attribute type="int" value="18" />
<attribute type="string" value="soda" />
<!-- 数组里包含一个对象 -->
<attribute type="class" value="test.TwoBean" >
<attribute name="name" value="www.sujun.org" />
<attribute name="has" value="true" />
</attribute>
</attribute>
<attribute name="twoBean" type="class" value="test.TwoBean&
相关文档:
最常见的XML数据类型有:Element, Attribute,Comment, Text.
Element, 指形如<Name>Tom<Name>的节点。它可以包括:Element, Text, Comment, ProcessingInstruction, CDATA, and EntityReference.
Attribute, 指在<Employee id=”12345”>中的粗体部分。
......
添加XML节点
/// <summary>
/// 初始化XML status-0
/// </summary>
/// <returns></returns>
private bool InitialConfig()
{
bool b ......
1. 介绍
1)DOM(JAXP Crimson解析器)
DOM是用与平台和语言无关的方式表示XML文档的官方W3C标准。DOM是以层次结构组织的节点或信息片断的集合。这个层次结构允许开发人员在树中寻找特定信息。分析该结构通常需要加载整个文档和构造层次结构,然后才能做任何工作。由于 ......
Input.xml-----------
<?xml version="1.0" encoding="gb2312"?>
<studentList>
<student sex="man">
<name>wgy</name>
<age>23</age>
<tel>12345678</tel>
</student>
<student sex="female">
<name>lemon</name&g ......