【Unity3D自学记录】解析XML的几种方式
发布时间:2020-12-16 05:04:47 所属栏目:百科 来源:网络整理
导读:编写一个XML文件如下: ?xml version="1.0" encoding="utf-8"?XmlJDName节点01/NameX001/XY002/Y/JDJDName节点02/NameX003/XY004/Y/JDJDName节点03/NameX005/XY006/Y/JD/Xml 接下来Unity中写代码: 第一种方式 通过GetElementsByTagName直接获取节点,返回类
编写一个XML文件如下: <?xml version="1.0" encoding="utf-8"?> <Xml> <JD> <Name>节点01</Name> <X>001</X> <Y>002</Y> </JD> <JD> <Name>节点02</Name> <X>003</X> <Y>004</Y> </JD> <JD> <Name>节点03</Name> <X>005</X> <Y>006</Y> </JD> </Xml> 接下来Unity中写代码: 第一种方式 通过GetElementsByTagName直接获取节点,返回类型是XmlNodeList数组,数组包括了这个节点的所有内容 代码如何: using UnityEngine; using System.Collections; using System.Xml; public class DJH_Read : MonoBehaviour { // Use this for initialization void Start () { string url = Application.dataPath + "/MyTest.xml"; XmlDocument XmlDoc=new XmlDocument(); XmlDoc.Load(url); int XmlCount = XmlDoc.GetElementsByTagName("JD")[0].ChildNodes.Count; for (int i = 0; i < XmlCount; i++) { string NameValue = XmlDoc.GetElementsByTagName("JD")[0].ChildNodes[i].InnerText; Debug.Log(NameValue); } } } 输出后结果:
第二种方式 通过foreach查找所有目标名称的子节点 代码如下: using UnityEngine; using System.Collections; using System.Xml; public class DJH_Read : MonoBehaviour { // Use this for initialization void Start () { string url = Application.dataPath + "/MyTest.xml"; XmlDocument XmlDoc=new XmlDocument(); XmlDoc.Load(url); XmlNodeList nodeList = XmlDoc.SelectSingleNode("Xml").ChildNodes; foreach (XmlElement xe in nodeList) { foreach (XmlElement xxe in xe.ChildNodes) { if (xxe.Name == "Name") { Debug.Log(xxe.InnerText); } } } } } 输出后结果:
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |