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);
        }

    }
}

保存该脚本,运行游戏,就可以在场景中的控制台看到以下的输出信息:
在这里插入图片描述

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Defining the Future

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值