自:http://www.cnblogs.com/sifenkesi/archive/2012/03/12/2391330.html

在PC上和IOS上读取XML文件的方式略有差别,经测试,IOS上不支持如下方法载入XML文件:

XmlDocument xmlDoc = new XmlDocument();

xmlDoc.Load("Assets/Resources/text.xml");

IOS上载入XML的正确方法有2种:

(1)方法一

TextAsset textAsset = (TextAsset)Resources.Load(filename, typeof(TextAsset));

XmlDocument xmlDoc = new XmlDocument();

xmlDoc.Load(new StringReader(textAsset.text));

(2)方法二

TextAsset textAsset = (TextAsset)Resources.Load(filename, typeof(TextAsset));

XmlDocument xmlDoc = new XmlDocument();

xmlDoc.LoadXML(textAsset.text);

上述2种方法分别使用了XmlDocument的Load()方法和LoadXML()方法,传入的参数有些差别,不过都需要通过Resources.Load()方法先将文件载入到一个TextAsset中,然后传给xmlDoc的载入方法。

(3)方法三

需要在IPad上进行持久化操作的文件,比如游戏的本地存档等数据,是不能存放在Resources目录下的,因为IPad上没法对其进行写操作。

那么对于IPad上读写XML,应该怎样进行操作呢?方法如下所述:

将需要序列化的文件存放在Application.persistentDataPath目录下,该目录是一个平台相关的路径。

写:

XmlDocument xmlDoc = new XmlDocument();

...

xmlDoc.Save(Application.persistentDataPath+"//abc.xml");

读:

XmlDocument xmlDoc = new XmlDocument();

xmlDoc.Load(Application.persistentDataPath+"//abc.xml");

PS1:还有另外一种实现本地持久化操作的方法,使用PlayerPrefs类,此类是U3D提供的专门用来进行玩家偏好设置的类,不过偶暂时未使用此类,是否方便尚未测试。

PS2:

对于Android平台:使用上述方法(3),即和IOS平台相同的操作即可。

对于Mac平台:使用上述方法(1)/(2)。

对于Windows平台:使用上述方法(1)/(2)。

(转)U3D不同平台载入XML文件的方法——IOS MAC Android的更多相关文章

  1. 【重要】U3D存放本地游戏存档——不同平台载入XML文件的方法——IOS MAC Android

    在PC上和IOS上读取XML文件的方式略有差别,经测试,IOS上不支持如下方法载入XML文件: XmlDocument xmlDoc = new XmlDocument(); xmlDoc.Load( ...

  2. C#中经常使用的几种读取XML文件的方法

    XML文件是一种经常使用的文件格式,比如WinForm里面的app.config以及Web程序中的web.config文件,还有很多重要的场所都有它的身影.Xml是Internet环境中跨平台的,依赖 ...

  3. Android程序解析XML文件的方法及使用PULL解析XML案例

    一.一般解析XML文件的方法有SAX和DOM.PULL (1)DOM(JAXP Crimson解析器) DOM是用与平台和语言无关的方式表示XML文档的官方W3C标准.DOM是以层次结构组织的节点或信 ...

  4. 八、Android学习第七天——XML文件解析方法(转)

    (转自:http://wenku.baidu.com/view/af39b3164431b90d6c85c72f.html) 八.Android学习第七天——XML文件解析方法 XML文件:exten ...

  5. C#中常用的几种读取XML文件的方法

    1.C#中常用的几种读取XML文件的方法:http://blog.csdn.net/tiemufeng1122/article/details/6723764/

  6. C# 读写XML文件的方法

    C# 读写XML文件的方法 一.写XML文件 XmlDocument xmlDocument = new XmlDocument();xmlDocument.AppendChild(xmlDocume ...

  7. 在C#程序中,创建、写入、读取XML文件的方法

    一.在C#程序中,创建.写入.读取XML文件的方法 1.创建和读取XML文件的方法,Values为需要写入的值 private void WriteXML(string Values) { //保存的 ...

  8. C#三种常用的读取XML文件的方法

    下面我将介绍三种常用的读取XML文件的方法.分别是 1: 使用 XmlDocument 2: 使用 XmlTextReader 3: 使用 Linq to Xml 这里我先创建一个XML文件,名为Bo ...

  9. sedna载入xml文件

    如果有一个xml文件a.xml.须要把它载入到sedna数据库xml_db里. sedna是通过se_term把xml载入到数据库的.有两种方法: 1.通过se_term的-query參数. se_t ...

随机推荐

  1. python语法(二)— 判断

    昨天简单的学习了一些python的一些简单的语句与python的数据类型,今天继续学习python的基础语句 if 语句. 一.if 语句 if 语句语法 if expression: ifSuite ...

  2. [UOJ424]count

    虽然题目不难,但是这应该是我第一次在考场上成功拿到计数题的不算低的分数,值得记录 如果对序列处理出$i$后面第一个比它大的位置$r_i$,那么两个序列同构的条件就是$r_i$都相同,而$r_i$构成一 ...

  3. [USACO5.5]Hidden Password

    题目大意: 求字符串最小表示. 思路: 本来按照lbn187的课件,知道SAM可以求字符串最小表示. 然而他并没有提供例题,就自己找了一道做. 大体思想就是把字符串复制一遍接在后面,构建SAM,然后每 ...

  4. bzoj 4034

    我写的是 DFS序+线段树 DFS序(出去的位置要单独建点)上,进入的位置是权值,出去的位置是权值的相反数,可以证明节点i到根节点的路径上的点的权值和是DFS序上1-in[i]的和. 只要搞出每个区间 ...

  5. Codeforces Round #280 (Div. 2) A. Vanya and Cubes 水题

    A. Vanya and Cubes time limit per test 1 second memory limit per test 256 megabytes input standard i ...

  6. ASP.NET 构建高性能网站 第5篇

    利用分析工具分析加载页面信息 站点的优化说到底还是站点每一个页面的优化,即使得站点的页面更快的呈现在用户的眼前.所以在此之前,我们首先来看看一个web页面的组成部分: 1. Html文件:在ASP.N ...

  7. Java_基础知识回顾

    1.ByteArrayInputStream. ByteArrayOutputStream String str = "ZHANGSAN"; //System.out.printl ...

  8. Inspect a new tab · cyrus-and/chrome-remote-interface Wiki

    Inspect a new tab · cyrus-and/chrome-remote-interface Wiki Runtime.evaluate

  9. both, either, neither的用法

    http://www.yywords.com/Article/200806/347.html  1. 这三个词都用来谈论两者:both 意为“(两者)都”,either意为“(两者中)任意一个”,ne ...

  10. as 汇编器

    [root@localhost ~]# cat .s .file "write.s" .section .rodata hello: .string "hello, wo ...