一、XML

1.介绍

  • XML是一个文档后缀名是*.xml
  • XML是一个特殊格式的文档
  • XML是可扩展的标记性语言
  • XML是Extentsible Markup Language的缩 写
  • XML是由万维网联盟(W3C)创建的标记语言,用于定义编码人类和机器可以读取的文档的语法。它通过使用定义文档结构的标签以及如何存储和传输文档来实现这一点。

2.结构

3.生成

4.示例

using UnityEngine;using UnityEngine.UI;using System.Xml;public class DataTest : MonoBehaviour{public Button b1;void Start(){b1.onClick.AddListener(CreateXML);}public void CreateXML(){//创建xml文件XmlDocument doc = new XmlDocument();//创建xml头XmlNode xmlNode = doc.CreateXmlDeclaration("1.0", "utf-8", null);//添加xml头doc.AppendChild(xmlNode);//创建xml根节点XmlElement root = doc.CreateElement("users");//添加xml根节点doc.AppendChild(root);//通过XmlNode创建根节点的子节点XmlNode xn_enement = doc.CreateNode(XmlNodeType.Element, "Name", null);XmlNode xn_enement2 = doc.CreateNode(XmlNodeType.Element, "Age", null);//设置子节点的值xn_enement.InnerText = "张三";xn_enement2.InnerText = "18";//创建属性XmlAttribute xa = doc.CreateAttribute("name");XmlAttribute xa2 = doc.CreateAttribute("age");//设置属性值xa.Value = "12345";xa2.Value = "";//获取元素的documentXmlDocument xd = xn_enement.OwnerDocument;//设置元素属性xn_enement.Attributes.SetNamedItem(xa);xn_enement2.Attributes.SetNamedItem(xa2);//通过XmlElement再创建一个根节点的子节点XmlElement element = doc.CreateElement("sex");element.SetAttribute("性别", "");element.InnerText = "男";//添加到子节点到root结点root.AppendChild(xn_enement);root.AppendChild(xn_enement2);root.AppendChild(element);//保存xmldoc.Save(Application.dataPath+"/test.xml");}}

5.读取和添加

void AddXMLData(){string path = Application.dataPath + "/test3.xml";if (File.Exists(path)){XmlDocument xml = new XmlDocument();xml.Load(path);XmlNode root = xml.SelectSingleNode("users");XmlElement elementChild1 = xml.CreateElement("Hobby");elementChild1.SetAttribute("爱好", "");elementChild1.InnerText = "睡大觉";//把节点添加至xml中,注意他们之间的先后顺序,这是生成XML文件的顺序root.AppendChild(elementChild1);//最后保存文件xml.Save(path);}}