Unity中Xml簡介以及通過腳本讀取Xml文本中的內容

1.XML 簡介

1.什麼是 XML?
XML:可擴展標記語言。
XML 類似於 HTML,都是標籤(標記)語言。
在軟件開發的各個領域(Web,Android,IOS,Game,EXE…)都可以 看到 XML 文件的身影。
XML 的作用是用於傳輸和存儲數據。
XML 本身就是一個存儲的文本。
2.XML 的語法結構
XML 文檔的語法結構最終是一個樹狀結構。
主要組成部分:根元素,子元素,屬性,文本。
3.XML 注意事項
①XML 標籤對大小寫很敏感;
②XML 標籤必須正確的嵌套;
③XML 標籤中的屬性值必須加(雙)引號;
④XML 文檔必須有根元素。

2.Unity 操作 XML

1.讀取 XML 中的數據並展示出來
<1>實例化一個 XML 文檔操作對象;
<2>使用 XML 對象加載 XML;
<3>獲取根節點;
<4>獲取根節點下所有子節點;
<5>遍歷輸出。

3、Unity讀取Xml文本Demo

1、首先在項目的Assets目錄下新建一個web.xml的文本(注意文件的後綴名爲xml),然後複製以下的代碼

<Web>
	<Item id="1">
		<name>天龍八部</name>
		<url>https://blog.csdn.net/jianjianshini</url>
	</Item>
	
	<Item id="2">
		<name>玉女心經</name>
		<url>www.baidu.com</url>
	</Item>
	
	<Item id="3">
		<name>降龍十八掌</name>
		<url>www.unity3d.com</url>
	</Item>
</Web>

保存該文本文件!!!
回到場景中,然後在場景中新建一個XMLDemo的C#腳本,並把該腳本掛載到場景中的攝像機上或者是燈光遊戲物體上,然後打開該腳本,並複製以下的代碼:

using UnityEngine;
using System.Collections;
using System.Xml; //引入XML操作相關的命名空間.

/// <summary>
/// XML操作演示.
/// </summary>
public class XMLDemo : MonoBehaviour {

    //定義一個字段,存儲xml的路徑.
    private string xmlPath = "Assets/web.xml";

	void Start () {
        ReadXMLByPath(xmlPath);
	}

    /// <summary>
    /// 通過路徑讀取XML中的數據進行顯示.
    /// </summary>
    /// <param name="path">xml的路徑地址</param>
    private void ReadXMLByPath(string path)
    {
        //<1>實例化一個XML文檔操作對象.
        XmlDocument doc = new XmlDocument();

        //<2>使用XML對象加載XML.
        doc.Load(path);

        //<3>獲取根節點.
        XmlNode root = doc.SelectSingleNode("Web");

        //<4>獲取根節點下所有子節點.
        XmlNodeList nodeList = root.ChildNodes;

        //<5>遍歷輸出.
        foreach(XmlNode node in nodeList)
        {
            //取屬性.
            int id = int.Parse(node.Attributes["id"].Value);
            //取文本.
            string name = node.ChildNodes[0].InnerText;
            string url = node.ChildNodes[1].InnerText;

            Debug.Log(id + "--" + name + "--" + url);
        }

    }
}

保存該腳本,運行遊戲,就可以在場景中的控制檯看到以下的輸出信息:
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章