在Unity3D中使用Mono.XML读取XML文件
2013-03-13 14:45
971 查看
最近项目中使用到读取XML数据来初始化游戏物体,试过了.Net的XML解析功能,然后就想Mono会不会有类似的解析工具。最后在国外的网站上找到了一个解决办法。本人通过试验,找到如下的方法来解析XML文件。以下是一个例子:
1、XML文件如下:
把这个XML文件(假定文件名为data.xml)放到Unity3D项目的任意Resources目录下,使用过如下脚本来访问(以查询Level为2的数据项为例):
调用ReadXML()就可以完成任务。
添加一句,话说使用Mono的XML可以减少对System库的引用,在输出到移动设备时可以减少内存的占用哦。其实这才是这个东东的最大意义。
PS:Mono.xml可以在 http://download.csdn.net/detail/reipeng/5107900 下载。直接放到Unity3d项目中就可用了。
1、XML文件如下:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <Rootxmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <Row> <Level>1</Level> <Coin>2323</Coin> <Exp>432</Exp> </Row> <Row> <Level>2</Level> <Coin>2342</Coin> <Exp>4444</Exp> </Row> ... ... </Root><span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);"> </span>
把这个XML文件(假定文件名为data.xml)放到Unity3D项目的任意Resources目录下,使用过如下脚本来访问(以查询Level为2的数据项为例):
<pre name="code" class="html"><pre name="code" class="html">using System.IO; using Mono.Xml; void ReadXML() { SecurityParser SP = new SecurityParser(); SP.LoadXml(Resources.Load("data").ToString()); System.Security.SecurityElement SE = SP.ToXml(); foreach (System.Security.SecurityElement childin SE.Children) { if (int.Parse(child.SearchForChildByTag("Level").Text) == 2) { coin = int.Parse(child.SearchForChildByTag("Coin").Text); exp = int.Parse(child.SearchForChildByTag("Exp").Text); Debug.Log("level:2\t" +"\texpNum:" + exp +"\tcoinNum:" + coin); break; } } }
调用ReadXML()就可以完成任务。
添加一句,话说使用Mono的XML可以减少对System库的引用,在输出到移动设备时可以减少内存的占用哦。其实这才是这个东东的最大意义。
PS:Mono.xml可以在 http://download.csdn.net/detail/reipeng/5107900 下载。直接放到Unity3d项目中就可用了。
相关文章推荐
- unity3d使用Mono.Xml读取xml
- unity3d使用Mono.Xml读取xml
- unity3d使用Mono.Xml读取xml
- 使用XmlReader读取xml文件
- 使用xml作为数据库的配置文件的路径读取问题
- 使用javascript中读取Xml文件做成的一个二级联动菜单
- Android下使用pull解析器生成XML文件、读取XML文件
- 使用SAX或者DOM或者pull读取XML文件
- 使用jQuery读取XML文件数据
- 使用PropertyPlaceholderConfigurer类读取外部属性文件内容到XML
- 如何使用opencv的c++接口来读取、写结构体数组到xml文件中
- c#使用Dataset读取XML文件动态生成菜单的方法
- VC++2005 使用调用webserver ,使用MSXML读取XML文件
- 使用 JavaScript读取 xml 文件 --生成 对应的二维数组 问题
- 使用XmlReader读取xml文件
- 使用XmlReader读取xml文件
- 使用DOM4j读取xml文件
- 使用XMLReader读取xml文件内容,并组合成数组
- 使用SAX读取XML文件的练习--(将读取的XML文件原样输出)
- unity3d学习笔记(十六)--unity3d读取plist或xml文件