原文地址:unity里利用C# 读写XML
读取XML节点信息
using System.Xml;
using System.IO;
private ArrayList Adialogue=new ArrayList();private ArrayList Bdialogue=new ArrayList();
void LoadXml()
{
//创建xml文档
XmlDocument xml = new XmlDocument();
XmlReaderSettings set = new XmlReaderSettings();
set.IgnoreComments = true;//这个设置是忽略xml注释文档的影响。有时候注释会影响到xml的读取
xml.Load(XmlReader.Create((Application.dataPath+"/data.xml"),set));
//得到objects节点下的所有子节点
XmlNodeList xmlNodeList = xml.SelectSingleNode("objects").ChildNodes;
//遍历所有子节点
foreach(XmlElement xl1 in xmlNodeList)
{
if(xl1.GetAttribute("id")=="1")
{
//继续遍历id为1的节点下的子节点
foreach(XmlElement xl2 in xl1.ChildNodes)
{
//放到一个textlist文本里
textList.Add(xl2.GetAttribute("name") + ": " + xl2.InnerText);//读取节点的内容
//得到name为a的节点里的内容。放到TextList里
if (xl2.GetAttribute("name") == "a")
{
Adialogue.Add(xl2.GetAttribute("name") + ": " + xl2.InnerText);
}
//得到name为b的节点里的内容。放到TextList里
else if (xl2.GetAttribute("name") == "b")
{
Bdialogue.Add(xl2.GetAttribute("name") + ": " + xl2.InnerText);
}
}
}
}
print(xml.OuterXml);
}