我在这里工作的一段代码几乎是完美的接受我认为迭代片我做错了。 ListView中的项目不会成为XML文件中的单独且不同的节点。每个后续项目都将成为ListView中第一个项目的子节点。我究竟做错了什么?代码如下:
private void button1_Click(object sender, EventArgs e)
{
System.Xml.XmlTextWriter writer = new System.Xml.XmlTextWriter(Application.StartupPath + "\\database.xml", null);
writer.WriteStartElement("Database");
for (int i = 0; i < listView1.Items.Count; i++)
{
writer.WriteStartElement("Account");
writer.WriteAttributeString("Description", listView1.Items[i].SubItems[0].Text);
writer.WriteAttributeString("Username", listView1.Items[i].SubItems[1].Text);
writer.WriteAttributeString("Password", listView1.Items[i].SubItems[2].Text);
}
writer.WriteEndElement();
writer.Close();
}
答案 0 :(得分:1)
你内部没有WriteEndElement来循环关闭“帐户节点。
答案 1 :(得分:1)
你没有写出Account
结束元素 - 这应该这样做:
for (int i = 0; i < listView1.Items.Count; i++)
{
writer.WriteStartElement("Account");
writer.WriteAttributeString("Description", listView1.Items[i].SubItems[0].Text);
writer.WriteAttributeString("Username", listView1.Items[i].SubItems[1].Text);
writer.WriteAttributeString("Password", listView1.Items[i].SubItems[2].Text);
writer.WriteEndElement();
}