XMLファイル書き出し

■せっかくなので、XMLファイルを出力してみましょう。(XNAのPC版でのみ使用が可能です、360環境ではコンパイルができませんでした)

まずは、以下の定義ができているのか確認してください。

using System.Text;
using System.Xml;

■プログラムは以下のとおりです。

public void SaveXML(string filename)
{
    XmlTextWriter writer = new XmlTextWriter(filename, Encoding.UTF8);
    writer.Formatting = Formatting.Indented;
    writer.WriteStartDocument(true);
    writer.WriteStartElement("XnaContent");  //  <XnaContent>
    {
        writer.WriteStartElement("Asset");  //  <Asset>
        foreach( MainData data in mainData )
        {
            writer.WriteStartElement("Item");  //  <Item>
            writer.WriteElementString("Key", data.Key);
            writer.WriteElementString("Value", "" + data.Value);
            writer.WriteEndElement(); //  </Item>
        }
        writer.WriteEndElement(); //  </Asset>
    }
    writer.WriteEndElement(); //  </XnaContent>
    writer.Close();
}

mainDataの構造体にはいかのような設定がしてあります。

mainData    = new MainData[2];
mainData[0] = new MainData();
mainData[0].Key = "World01";
mainData[0].Value = 54;
mainData[1] = new MainData();
mainData[1].Key = "World02";
mainData[1].Value = 300;

■結果として

<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<XnaContent>
  <Asset>
    <Item>
      <Key>World01</Key>
      <Value>54</Value>
    </Item>
    <Item>
      <Key>World02</Key>
      <Value>300</Value>
    </Item>
  </Asset>
</XnaContent>

というファイルが出力されます。