万年素人からHackerへの道

万年素人がHackerになれるまで殴り書きするぜ。

  • ・資産運用おすすめ
    10万円は1000円くらい利益
    資産運用ブログ アセマネ
    • ・寄付お願いします
      YENTEN:YYzNPzdsZWqr5THWAdMrKDj7GT8ietDc2W
      BitZenny:ZfpUbVya8MWQkjjGJMjA7P9pPkqaLnwPWH
      c0ban:8KG95GXdEquNpPW8xJAJf7nn5kbimQ5wj1
      Skycoin:KMqcn7x8REwwzMHPi9fV9fbNwdofYAWKRo

    XmlDocument の注意点

    Unityで使う時

    XmlDocument xmlDoc = new XmlDocument();
    xmlDoc.Load("Path");
    

    しかし、この場合のパスはシステムのパスになってしまう。
    Load()の引数にはパス名を入れる。XMLのテキストデータの文字ではない


    XMLのテキストデータの文字を使う場合は
    ↓のようにする

    インポート

    using System;
    using System.Collections;
    using System.IO;
    using System.Xml;
            string XML_PATH = "XML/Filename"; // .xmlはいらない!
            XmlDocument xmlDoc = new XmlDocument();
            TextAsset textAsset = Resources.Load(XML_PATH) as TextAsset;
            try
            {
                xmlDoc.LoadXml(textAsset.ToString());
                XmlNodeList nodeList = xmlDoc.SelectNodes("root/item/child");
                
                foreach (XmlNode node in nodeList)
                {
                    Debug.Log("name:" + node.Name);
                    Debug.Log("text:" + node.InnerText);
                }
            }
            catch (Exception ex)
            {
                Debug.LogError(ex.Message);
            }
    

    参考URL:http://wiki.livedoor.jp/bokkuri_orz/d/C%23%20-%20XML

    XMLは参考先を真似したこうした。

    <?xml version="1.0" encoding="utf-8"?>                                      
      <root>                                                                      
        <item attr="value">                                                         
        <!--comment-->                                                              
        </item>                                                                     
        <item>                                                                      
          <child>child 1</child>                                                      
          <child>child 2</child>                                                      
        </item>                                                                     
      </root> 
    Text node cannot appear in this state. Line 1, position 1.

    っていううざいエラー
    ASCIIにしたらOKぽかった

    // settings.Encoding = Encoding.UTF8;
    settings.Encoding = Encoding.ASCII;