天天看点

【 unity3d 】沙盒路径

在使用XML解析的时候会要加载相对路径或绝对路径,但是在打包给其他人的时候,是不可取得。

这时需要传入一个沙盒路径

沙河路径需要一个XML名,并把XML文档放入Resorces文件里(Resorces文件夹自己创建)就可以接收:

代码如下:传入xml文档名(不需要后缀)返回沙盒路径 注意文件名区分不能出错

//获取沙河地址
	string getXMLAddress(string filename) {

		TextAsset xmlText = Resources.Load (filename) as TextAsset;

		Debug.Log (xmlText.text);

		string WriteAblePath = Application.persistentDataPath + "/" + filename;

		Debug.Log (WriteAblePath);

		if (!File.Exists (WriteAblePath)) {
			Debug.Log ("not find but I can get");
			File.WriteAllText (WriteAblePath, xmlText.text);
		
		}
		return WriteAblePath;
           

}

这个返回的地址可以直接用与加载XML文件路径,不需要加上.xml

如:

XmlDocument doc = new XmlDocument ();

		doc.Load (getXMLAddress (xmlAddress));