Example #1
0
    void Start()
    {
        //----------------------------------------------------------------------------------<>
        //·添加根节点和子节点
        //		普通添加父节点子节点的方法。
        //		addRootNode("节点名, 值);
        //		addChildNode("父节点名, 节点名, 值);
        //----------------------------------------------------------------------------------<>
        XmlRW xmlRW = new XmlRW();

        xmlRW.addRootNode("player1", "");
        xmlRW.addChildNode("player1", "name", "Jonh");
        xmlRW.addRootNode("player2", "");
        xmlRW.addChildNode("player2", "name", "Jam");
        xmlRW.addRootNode("player3", "");
        xmlRW.addChildNode("player3", "name", "nax");


        //----------------------------------------------------------------------------------<>
        //·放入哈希表到某个节点下。
        //		也可以直接放入一个字典(哈希表)进去。
        //		这样写几个for循环就能保存所有数据。
        //			重载1:addDictToNode(根节点,字典名);
        //			重载2:addDictToNode(字典名);	默认为 在根节点下存放数据。
        //----------------------------------------------------------------------------------<>
        var dict = new Dictionary <string, string>();

        dict.Add("Lv", "1");
        dict.Add("hp", "7000");
        dict.Add("mp", "4000");
        dict.Add("ap", "4");
        dict.Add("dkp", "10000");

        //XmlRW.addDictToNode(dict);
        xmlRW.addRootNode("other", "");
        xmlRW.addDictToNode("other", dict);


        //----------------------------------------------------------------------------------<>
        //·创建一个临时的节点
        //		在一些情况下,需要创建一个临时节点,在合适的时候使用。
        //----------------------------------------------------------------------------------<>
        //
        xmlRW.createTempNode("tempNode", "");
        xmlRW.addChildNode("tempNode", "hp", "50");
        xmlRW.addChildNode("tempNode", "mp", "60");
        xmlRW.addTempNode("other", "tempNode");


        //----------------------------------------------------------------------------------<>
        //写入数据到硬盘
        //----------------------------------------------------------------------------------<>
        //
        xmlRW.dataWrite("setting.xml");


        //----------------------------------------------------------------------------------<>
        //读入测试
        //----------------------------------------------------------------------------------<>
        xmlRW.dataRead("setting.xml");
        foreach (var go in xmlRW.getAllNode())
        {
            print("name: " + go.name + "    value:    " + go.text);
        }


        //----------------------------------------------------------------------------------<>
        //·读取指定节点
        //使用路径的方式指定读取xml数据。根节点则不用填写。
        //节点在该类中使用Node结构类来存放。
        //----------------------------------------------------------------------------------<>
        //
        print("------------------------------------------------\n");
        print("my dkp is :   " + xmlRW.findNode("other/dkp").text);
        print("node name :   " + xmlRW.findNode("other/dkp").name);


        //----------------------------------------------------------------------------------<>
        //·遍历所有子节点
        //----------------------------------------------------------------------------------<>
        //
        foreach (var go in xmlRW.getAllChildNode("other"))
        {
            print("other Inner Element :   " + go.name + "   Content: " + go.text);
        }
    }