Autor Beitrag
Snowden
Hält's aus hier
Beiträge: 1



BeitragVerfasst: Di 18.02.14 11:50 
Hallo,

mit meinem Codeausschnitt kann ich eine XML Datei erstellen und diese mit einer Person füllen (s.u.) ich möchte aber mehrere Personen eintragen können. Das ich eine ganze Liste in der XML Datei habe.

ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
void Button1Click(object sender, EventArgs e)
{

string puffer = textBox1.Text; 

XmlWriterSettings settings = new XmlWriterSettings();
settings.Indent = true;
settings.IndentChars = " "

XmlWriter writer = XmlWriter.Create("Personen.xml", settings);
writer.WriteStartDocument();
writer.WriteStartElement("Personen");
writer.WriteComment("Die Datei wurde mit XmlWriter erzeugt");
writer.WriteStartElement("Person");
writer.WriteElementString("Zuname", puffer);
writer.WriteElementString("Vorname""Peter");
writer.WriteStartElement("Adresse");
writer.WriteAttributeString("Ort""Eifel");
writer.WriteAttributeString("Strasse""Am Wald 1");
writer.WriteValue("Germany");
writer.WriteEndElement();
writer.WriteEndElement();
writer.WriteEndElement();
writer.WriteEndDocument();
writer.Close();

}


So sieht zurzeit meine XML Datei aus :

ausblenden XML-Daten
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
<?xml version="1.0" encoding="utf-8" ?> 
- <Personen>
<!-- Die Datei wurde mit XmlWriter erzeugt
-->
 
- <Person>
<Zuname>miu</Zuname
<Vorname>Peter</Vorname
<Adresse Ort="Eifel" Strasse="Am Wald 1">Germany</Adresse
</Person>
</Personen>


Aber ich möchte noch weitere Personen einfügen, könnt ihr mir was vorschlagen ?

Viele Dank im Voraus

Moderiert von user profile iconChristian S.: Code- durch XML-Tags ersetzt
baumina
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 305
Erhaltene Danke: 61

Win 7
Delphi 10.2 Tokyo Enterprise
BeitragVerfasst: Di 18.02.14 11:54 
Evtl. hilft dir dieses Tutorial weiter : www.dotnetperls.com/xmlwriter

Für diesen Beitrag haben gedankt: Snowden
Th69
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Moderator
Beiträge: 4764
Erhaltene Danke: 1052

Win10
C#, C++ (VS 2017/19/22)
BeitragVerfasst: Di 18.02.14 12:37 
Hallo und :welcome:

benutze anstatt dem händischen Schreiben einer XML-Datei besser die Serialisierung, s. als Einstieg Mit XmlSerializer Objekte als XML speichern und laden.
So kannst du ganz einfach im Programm eine List<Person> verwenden und diese dann per Serialisierung abspeichern und wieder laden.

P.S. Und bitte Crossposts entsprechend unserer Richtlinien (3.10 Crosspostings) hier verlinken: myCSharp.de - Mehrere Einträge in eine XML-Datei schreiben, danke.

Für diesen Beitrag haben gedankt: Snowden