Ich habe ein XmlDocument namens xmlDocument.
Dieses würde ich gerne in eine Datei schreiben. Das funktioniert auch - nur leider ohne Zeilenumbrüche und Einrückungen:
XmlWriterSettings xmlSettings = new XmlWriterSettings();
xmlSettings.ConformanceLevel = ConformanceLevel.Auto;
xmlSettings.Indent = true;
xmlSettings.OmitXmlDeclaration = true;
xmlSettings.NewLineOnAttributes = true;
using (XmlWriter writer = XmlWriter.Create(@"c:\test.xml", xmlSettings)))
{
writer.WriteRaw(xmlDocument.OuterXml);
writer.Flush();
}
Was mache ich da falsch?
Benutze statt XmlWriter den XmlTextWriter. Da gibts 'ne Property namens "Formatting" 🙂
Non quia difficilia sunt, non audemus, sed quia non audemus, difficilia sunt! - Seneca
@MarsStein: Leider geht auch das nicht 😦:
XmlTextWriter writer = new XmlTextWriter(@"c:\test.xml"), Encoding.UTF8);
writer.Formatting = Formatting.Indented;
writer.WriteRaw(xmlDocument.OuterXml);
writer.Flush();
Guck mal das hier an:
http://www.personalmicrocosms.com/Pages/dotnettips.aspx?c=14&t=16
Non quia difficilia sunt, non audemus, sed quia non audemus, difficilia sunt! - Seneca
Ja da hast Du recht. Ich glaube aber nicht das Du das alles brauchst, wenn ich mich richtig erinnere, hab ich's selbst schon mal deutlich kürzer gemacht hab den Code aber gerade nicht zur Hand.
Vielleicht reicht es schon, wenn Du so vorgehst wie in deinem ersten Versuch, aber statt WriteRaw des writers das WriteContentTo des Document benutzt.
Non quia difficilia sunt, non audemus, sed quia non audemus, difficilia sunt! - Seneca
hast Du eigentlich schon mal versucht mit
xmlDocumrnt.Save(@"c:\test.xml");
Non quia difficilia sunt, non audemus, sed quia non audemus, difficilia sunt! - Seneca