1

私がやろうとしているのは、ボタンを押すと、XML ファイルをロードしてノードを追加しようとすることです。

XmlDocument doc = new XmlDocument();
doc.Load("XMLFILE.xml"); 
XmlNode Tag1 = doc.CreateElement("Tag1");
XmlNode Tag2 = doc.CreateElement("Tag2");
Tag2.InnerText = food.Text;
Tag1.AppendChild(Tag2);

XmlNode Tag3 = doc.CreateElement("Tag3");
Tag3.InnerText = games.Text;
Tag1.AppendChild(Tag3);

XmlNode Tag4 = doc.CreateElement("Tag4");
Tag4.InnerText = life.Text;
Tag1.AppendChild(Tag4);

コードを実行してボタンをクリックすると、ファイルは空になり、最初にファイルを作成したときに作成したタグが 1 つしかありません。では、XML を読み込んで追加するにはどうすればよいでしょうか。

4

1 に答える 1

2

投稿したコードには 2 つの問題があります。

  1. 多数の XML ノードを作成しましたが、ロードしたドキュメントに実際にそれらを追加した場所はどこにもありません。AppendChild()新しいノードを XML ツリーに表示する場合は、ファイル内に既にあるDocumentElementまたはその他のノードを呼び出す必要があります。

  2. コードは XML ドキュメントをディスクからメモリにロードして編集していますが、XML ドキュメントを再びディスクに保存することはありません。Save()変更がファイルに保持されていることを確認したい場合は、更新されたドキュメントを呼び出す必要があります。

于 2013-05-12T21:22:59.873 に答える