记录下自己的学习,忘记后方便查看。本人初学者,有错误请多多指正
在unity打包后,有时候需要外部修改文本或者图片,这里写一下unity加载Xml文件的方式;
一、创建StreamingAssets文件夹
StreamingAssets文件夹命名可以使PC端打包后,还可以修改文件夹里的文件,该文件夹打包后不会加密。
二、写脚本
1.引入库
代码如下(示例):
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System.Xml;
using System.IO;
using UnityEngine.UI;
2.自己学习写的一个读取Xml的脚本
代码如下(示例):
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System.Xml;
using System.IO;
using UnityEngine.UI;
public class ReadXml : MonoBehaviour
{
public Text[] text;
List<string> textList = new List<string>();
private string localPath;
void Start()
{
readxml();
}
void readxml()
{
localPath = Application.streamingAssetsPath+"/_Xml"+ "/" + "item.xml";
if (File.Exists(localPath))
{
XmlDocument xml = new XmlDocument();
xml.Load(localPath);
XmlNodeList nodeList = xml.SelectSingleNode("text").ChildNodes;
foreach(XmlElement xe in nodeList)
{
textList.Add(xe.GetAttribute("value") );
foreach (string s in textList)
{
Debug.Log(textList[0]);
}
switch (xe.Name)
{
case "text1":
text[0].text = xe.GetAttribute("Name");
break;
case "text2":
text[1].text = xe.GetAttribute("Name");
break;
case "text3":
text[2].text = xe.GetAttribute("Name");
break;
}
}
}
else
{
Debug.Log("没有找到文件夹:寻找到相对路径路径为"+localPath);
}
}
}
我这里是加了一个数组,放了3个text文本框;执行方法后会把Xml文件相对于的属性读取出来
下面是XML文件
下面是运行后的结果(分别是三个文本框显示的内容),可以看到,成功读取到Xml里的文本 顺便贴下自己的外部加载的文件夹和挂载的脚本
总结
提示:主要是相关的API内容来读取XML文件,至于怎么显示全靠我们自己的逻辑实现。根据工作内容,()我是菜鸡(哭))顺便学习了下外部加载图片,下次再记录吧。 第一次在这东西,也不太会排版hhh。
|