2011-03-28 5 views
0

제가 여기서 생각하고있는 일부 코드는 거의 완벽하게 받아 들일 수 있습니다. ListView의 항목은 XML 파일에서 별개의 별개의 노드가되지 않습니다. 이후의 각 항목은 ListView의 첫 번째 항목의 자식 노드가됩니다. 내가 도대체 ​​뭘 잘못하고있는 겁니까? 코드는 다음과 같이 루프 "계정 노드를 종료하는C# : 코드가 XML 문서에서 원치 않는 자식 노드를 생성하고 있습니다.

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(); 
    } 

답변

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(); 
    } 
1

당신은 당신 안에 WriteEndElement이없는

관련 문제