using UnityEngine; using System.Collections; using System.Xml; using System.IO; public class xmlTest : MonoBehavIoUr { //Xml //读取本地xml,增删改查 //读取网络xml,增删改查,带有节点的 //在本地生成xml文件 void Start() { //成创建一个文件夹,FileStream操作的是字节byte // FileStream fileStream = new FileStream(Application.dataPath + "/MyXml",FileMode.Create);//创建一个文件夹
// //写文件,StreamWrite操作的是字符 StreamWriter writer = new StreamWriter(Application.dataPath+"/json.txt",true);//路径,是否追加,(接着上一次的文件里的内容接着写,fasle:就完全覆盖掉了) writer.Write(json); writer.Close() //Open:打开现有文件,如果不存在则发生异常 //Create:创建一个文件,如果已经存在则发生异常 //openOrCreate:尝试打开已经存在的文件,如果还不存在就新建一个 StartCoroutine("CreateFile"); } void Update() { } IEnumerator CreateFile() { //创建一个xml文件 // FileStream fileStream = new FileStream(Application.dataPath + "/My.xml",FileMode.OpenOrCreate); // fileStream.Close(); yield return new WaitForSeconds(0.5f); //XmlDocument xmlDocument = new XmlDocument(); //XmlElement people = xmlDocument.CreateElement("people"); //xmlDocument.AppendChild(people); //xmlDocument.Save("Assets/My.xml");//生成一个文件, // xmlDocument.Load("Assets/My.xml");//加载一个这个路径的xml文件,这个文件里面不能为空 //创建xml的方式 //1.使用xmlDocument,创建节点啥的,然后save到一个路径下 //2.使用xmlTextReader // XmlTextWriter xmlwriter = new XmlTextWriter("Assets/My2.xml",System.Text.Encoding.UTF8);//创建了一个xml文件 // XmlTextWriter xm = new XmlTextWriter("Assets/My3",System.Text.Encoding.UTF8);//只能创建xml文件,你不用写后缀 //读取一个xml问件,得从头开始访问,或者给出你要访问的那个节点的位置 //XmlDocument xmldocument = new XmlDocument(); //xmldocument.Load("Assets/Cartoon.xml"); //XmlElement xme =(XmlElement) xmldocument.SelectSingleNode("result/results/AlbumInfo/albumId"); // print(xme.InnerText); //用xmlTextReader XmlTextReader reader = new XmlTextReader("Assets/Cartoon.xml"); while (reader.Read()) { if (reader.NodeType == XmlNodeType.Element) { if (reader.Name=="albumId")//把所有的albumid都读取出来了,然而不能得到一个特定的值 { print(reader.ReadElementContentAsString()); } } } } }
读取xml的三种方式
1.DOM:结构文档方式,把所有的文件都读到内存中,它允许编辑和更新XML文档,可以随机访问文档中的数据,可以使用XPath查询
2.流模型:(XmlTextReader,XmlTextWrite(推模型:SAX,拉模型:XmlTextReader)):内存中只有当前节点,不可以回流
原文链接:https://www.f2er.com/xml/296155.html