<?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); } } } } }
输出后结果:
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。