• XML的两种读取方法


    1.xml文件内容如下:

    <?xml version="1.0" encoding="utf-8" ?>
    <info>
    <book id ="b1" lang ="en">
    <name>c++</name>
    <price>555</price>
    </book>
    <book id ="b2" lang ="en">
    <name>c#</name>
    <price>666</price>
    </book>
    </info>

    这个文件可以放在resources或者StreamingAssets这个下面,所以有了两种路径读取方式,读取方式如下

    using UnityEngine;
    using System.IO;
    using System.Xml;
    using System.Collections;

    public class ReadXml : MonoBehaviour {


    /// <summary>
    /// resources下面读取xml的方法
    /// </summary>
    //void Start()
    //{

    // //resources下面的读法
    // TextAsset textAsset = Resources.Load("XMLFile1", typeof(TextAsset)) as TextAsset;
    // ReadXML(new MemoryStream(textAsset.bytes));
    //}

    /// <summary>
    /// StreamingAssets 下面的读取xml的方法
    /// </summary>
    /// <returns></returns>
    IEnumerator Start()
    {
    WWW www = new WWW("file://" + Application.streamingAssetsPath + "/XMLFile1.xml");
    yield return www;

    ReadXML(new MemoryStream(www.bytes));
    www.Dispose();
    }

    // Update is called once per frame
    void Update ()
    {

    }

    void ReadXML(Stream stream) {
    XmlDocument xmlDoc = new XmlDocument();
    xmlDoc.Load(stream);

    XmlNode info = xmlDoc.SelectSingleNode("info");
    foreach (XmlNode node in info.ChildNodes)
    {
    string id = node.Attributes["id"].InnerText;
    string lang = node.Attributes["lang"].InnerText;

    string name = node.SelectSingleNode("name").InnerText;

    Debug.Log(node.Name + "/" + "id =" + id + " lang = " + lang + " name = " + name);
    }
    }
    }

  • 相关阅读:
    我是卡拉 上海国际工业博览会纪实(4)
    GDI+中常见的几个问题(1)
    我是卡拉 上海国际工业博览会纪实(2)
    GDI+中常见的几个问题(9)
    GDI+中常见的几个问题(3)
    我是卡拉 上海国际工业博览会纪实(7)
    贵阳的小吃
    Indigo是啥
    我是卡拉 上海国际工业博览会纪实(3)
    云计算里AWS和Azure的探究(1)
  • 原文地址:https://www.cnblogs.com/xwwFrank/p/4818593.html
Copyright © 2020-2023  润新知