このウェブサイトのチュートリアルを試してみることにしました
http://www.csharphelp.com/2006/05/creating-a-xml-document-with-c/
これが私のコードです。これは多かれ少なかれ同じですが、少し読みやすいです
using System;
using System.Xml;
public class Mainclass
{
public static void Main()
{
XmlDocument XmlDoc = new XmlDocument();
XmlDocument xmldoc;
XmlNode node1;
node1 = XmlDoc.CreateNode(XmlNodeType.XmlDeclaration, "", "");
XmlDoc.AppendChild(node1);
XmlElement element1;
element1 = XmlDoc.CreateElement("", "ROOT", "");
XmlText text1;
text1 = XmlDoc.CreateTextNode("this is the text of the root element");
element1.AppendChild(text1);
// appends the text specified above to the element1
XmlDoc.AppendChild(element1);
// another element
XmlElement element2;
element2 = XmlDoc.CreateElement("", "AnotherElement", "");
XmlText text2;
text2 = XmlDoc.CreateTextNode("This is the text of this element");
element2.AppendChild(text2);
XmlDoc.ChildNodes.Item(1).AppendChild(element2);
}
}
これまでのところ、私は XmlDocument が好きですが、この行がどのように機能するのかわかりません
XmlDoc.ChildNodes.Item(1).AppendChild(element2);
具体的には、その Item() 部分
MSDNによると...
//
// Summary:
// Retrieves a node at the given index.
//
// Parameters:
// index:
// Zero-based index into the list of nodes.
//
// Returns:
// The System.Xml.XmlNode in the collection. If index is greater than or equal
// to the number of nodes in the list, this returns null.
ただし、「インデックス」が何を指しているのか、または Item() が何をしているのかはまだよくわかりません。それは木を下りますか、それとも枝を下りますか?
あと、見ていたらこんな感じになると思ってた
私が起こると思ったこと:
<?xml version="1.0"?>
<ROOT>this is the text of the root element</ROOT>
<AnotherElement>This is the text of this element</AnotherElement>
しかし、それはこのように終わった
実際の出力
<?xml version="1.0"?>
<ROOT>this is the text of the root element
<AnotherElement>This is the text of this element</AnotherElement>
</ROOT>
(フォーマット追加)