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

在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

时间: 2025-01-31 01:24:51

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

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

自: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 =

U3D不同平台载入XML文件的方法——IOS MAC Android

转自: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 =

maven工程依赖的jar包,在本地仓库有,但是pom.xml文件却报错找不到jar包

问题描述: ? 第一时间查看本地仓库,发现明明有却还报错 ? 解决方案: 查看错误依赖的_remote.repositories文件 ? 正常以来的的_remote.repositories文件 ? 把getui-nexus改成nexus-aliyun. 其中nexus-aliyun是你maven的setting.xml中设置的远程仓库的名字 ? 原文地址:https://www.cnblogs.com/joey-kaka/p/9831101.html

C#三个平台上的文件选择方法

wpf: Microsoft.Win32.OpenFileDialog dlg = new Microsoft.Win32.OpenFileDialog(); dlg.DefaultExt = ".txt"; Nullable<bool> result = dlg.ShowDialog(); if (result == true) { // Open document string filename = dlg.FileName; } FileStream aFile =

PlayerPrefs游戏存档

本地存储.相当于Flash里面的SharedObject. Android位置:机器自身存储的(非扩展卡)/data/data/appname/shared_prefs/{AppName}.xml,如果想查看需要Root. IOS位置:暂时还没找到. 其他位置:参考 https://docs.unity3d.com/Documentation/ScriptReference/PlayerPrefs.html PlayerPrefs游戏存档,码迷,mamicode.com

Cocos2d-x 游戏存档

游戏存档功能可以保存游戏中数据,让玩家游戏可以延续, 单机游戏更为重要.而CCUserDefault可以作轻量级数据库使用,用来存储数据,支持数据类型bool,int, float, double, string. 存储数据 CCUserDefault::sharedUserDefault()->setStringForKey("string", "value1"); //参数顺序:键,对应的值 CCUserDefault::sharedUserDefault

PlayerPrefs 游戏存档

游戏存档,持久化储存,玩家游戏记录以数据形式存在PlayerPrefs中的. 原理: 在Mac OS X上PlayerPrefs存储在-/Library/PlayerPrefs文件夹,名为unity.[company name].[product name].plist,这里company和product名是在Project Setting中设置的,相同的plist用于在编辑器中运行的工程和独立模式 在Windows独立模式下,PlayerPrefs被存储在注册表的 HKCU\Software\

调用存放在第三方视频网站平台的视频,视频广告太长(用酷播云就好了)

我们把做好的视频,存放在第三方视频网站平台,再调用时,视频一般都有50秒,甚至70秒的广告,这就看观看者,带来非常难受的体验. 示例1: 示例2: 示例3: 示例4: 广告过长,会影响观看者的耐心,有人可能就直接关闭不看了.那么有没有更好的,没有广告的解决方案呢?有,酷播云,就是无任何广告的,集视频上传.视频转码.视频存储和视频播放四大功能为一体:全界面化操作平台,使用简单方便:视频无广告,提供最佳的观看体验. 酷播云,如何使用呢?先注册一个酷播云帐号,可以点击此处注册>>

游戏视频开发平台的特点

“AnyChat游戏视频系统”采用增强的H.264视频编码算法和G.729语音编码算法,具有高画质.语音清晰.流畅的特点,采用P2P技术进行网络传输,服务器采用完成端口模型的重叠IO,具有极高的并发处理能力. 视频技术视频制式:PAL-B分辨率: 176×144帧  率: 8视频编码器:H.264视频流码率:10kbps ~ 50kbps(VBR) 音频技术采样率:22050 Hz量化值:16 bit声  道:1 chanel音频编码器:G.729音频流码率:8kbps静音检测:支持 P2P技术