Unity Xml教程 之 在Xml文件中删除内容

 时间:2026-02-12 06:14:15

1、打开Unity,新建一个空工程,具体如下图

Unity Xml教程 之 在Xml文件中删除内容

2、在工程中,新建一个脚本“XmlTest”,双击脚本或者右键“Open C# Project”打开脚本,具体如下图

Unity Xml教程 之 在Xml文件中删除内容

3、在“XmlTest”编辑代码,首先引用“System.Xml”和“System.IO”命名空间,然后在“Start”函数里面调用删除Xml数据内容的函数,接着实现删除Xml数据内容函数,具体代码和代码说明如下图

Unity Xml教程 之 在Xml文件中删除内容

Unity Xml教程 之 在Xml文件中删除内容

4、“XmlTest”脚本的具体内容如下:

using UnityEngine;

using System.Xml;

using System.IO;

public class XmlTest : MonoBehaviour {

    // Use this for initialization

    void Start () {

        RemoveXmlData ();

    }

            /// <summary>

    /// Removes the xml data.

    /// </summary>

    private void RemoveXmlData (){

        //Xml文件路径

        string path = Application.dataPath + "/XmlData.xml";

        //判断文件是否存在

        if (File.Exists (path)) {

            //新建一个Xml,并加载Xml内容

            XmlDocument xml = new XmlDocument ();

            xml.Load (path);

            //获得Xml根节点内容,查找获取内容下对应节点的内容

            XmlElement root = xml.DocumentElement;

            XmlNodeList elementNodes = root.GetElementsByTagName ("Object");

            //获取对应删除子节点,存在及删除

            XmlNode Node1 = root.SelectSingleNode("Message[@Id ='1']");

            if(Node1 != null){

                root.RemoveChild (Node1);

                Debug.Log ("节点已删除!");

                xml.Save (path);

            }

            //获取对应删除子节点,判断是否存在

            XmlNode Node2 = root.SelectSingleNode("Message[@Id ='2']");

            if(Node2 != null){

                //获取对应删除子节点下的子节点,存在及删除

                XmlNode selectNode = Node2.SelectSingleNode("Content[@Name ='Billy']");

                if (selectNode != null) {

                    Node2.RemoveChild (selectNode);

                    Debug.Log ("节点已删除!");

                    xml.Save (path);

                }

            }

        }

    }

}

5、脚本编译正确,回到Unity界面,在工程中添加Xml文件“XmlData”,在场景中新建一个“GameObject”,并把脚本“XmlTest”挂载上去,具体如下图

Unity Xml教程 之 在Xml文件中删除内容

Unity Xml教程 之 在Xml文件中删除内容

6、“XmlData”文件内容如下:

<Object>

  <Message Id="1">

    <Contents Name="Any">One More Try!</Contents>

    <Mission Task="First">Just Do It!</Mission>

  </Message>

  <Message Id="2">

    <Content Name="Billy">No Pain, No Gain.</Content>

    <Mission Task="Second">Practice Makes Perfect!</Mission>

  </Message>

</Object>

7、运行场景,在控制台Console即可看到删除成功的打印结果,以删除后“XmlData”的内容,具体如下图

Unity Xml教程 之 在Xml文件中删除内容

Unity Xml教程 之 在Xml文件中删除内容

8、到此,《Unity Xml教程 之 在Xml文件中删除内容》讲解结束,谢谢

  • 如何在excel中制作带搜索功能的下拉菜单
  • Excel如何统计内容以特定文本结尾的单元格数量
  • Excel函数中LOOKUP函数的用法?
  • PL/SQL如何在对象浏览器中自定义文件夹
  • 怎么养好小型水草缸?
  • 热门搜索
    10月份去哪旅游最好 鲁滨逊旅游网 浙江宁波旅游景点 昌平旅游景点 禹州旅游景点大全 哈尔滨旅游资讯网 上海市商贸旅游 内江旅游景点大全 河南旅游学院 淘宝网旅游鞋