unity XML 初初初入门

xml在unity中可以用来保存各种配置(Scene)和数据(装备数据)资源,同样的还有jason和binary,所以这三种文件对我们以后写代码是相当重要的。

下面写了一个小小的工程作为入门来认识下XmlDocument、XmlElement、SetAttribute、InnerText分别是什么

1.新建一个项目工程,名字随便写,进入unity后在资源面板里新建两个文件夹

Editor – 存放工具类,这个文件夹里的东西在生成可执行文件时不会打包进去
StreamingAssets – 存放资源文件,便于进行资源更新

2.在Editor中新建ExportScene.cs, 代码如下:
注释已写好

/*****************************
*
*  Author : TheNO.5
*
******************************/


using UnityEngine;
using UnityEditor;
using System.IO;
using System.Xml;

public class CreateXML : MonoBehaviour 
{
    // 新建菜单项
    [MenuItem("Editor/CreateXML")]
    static void ExportSceneToXML()
    {
        //获取XML保存路径,引号中的可以自己指定,前提是指定文件夹必须存在
        string filePath = Application.dataPath + @"/StreamingAssets/TestXML.xml";
        // 如果此文件已存,则删掉
        if(File.Exists(filePath))
            File.Delete(filePath);

        // 新建一个XML
        XmlDocument xmlDoc = new XmlDocument();
        // 为这个XML创建两个元素节点
        XmlElement config = xmlDoc.CreateElement("Config");
        XmlElement scene = xmlDoc.CreateElement("Scene");
        // 设置scene元素的属性
        scene.SetAttribute("name", filePath);
        // 创建另一个新元素节点
        XmlElement position = xmlDoc.CreateElement("position");
        // 同上
        XmlElement x = xmlDoc.CreateElement("x");
        // 设置元素内容
        x.InnerText = "InnerText";

        // 指定各节点层级关系
        position.AppendChild(x);
        scene.AppendChild(position);
        config.AppendChild(scene);
        xmlDoc.AppendChild(config);

        // 保存
        xmlDoc.Save(filePath);

        // 刷新,作用相当于在unity中的资源面板中右击-刷新(Refresh)
        AssetDatabase.Refresh();
    }
}

3.回到unity
这里写图片描述

添加的菜单在这里,点击,会在资源中生成TestXML.xml
这里写图片描述

4.然后就可以打开查看生成的xml代码,我用vscode打开的,贴上。
对照第二步代码看
这里写图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值