Erstellen von XML-Writern

Aktualisiert: November 2007

XmlWriter-Instanzen werden mit der statischen XmlWriter.Create-Methode erstellt.

XmlWriter-Instanzen werden mit der Create-Methode erstellt. Mit der XmlWriterSettings-Klasse wird die Gruppe von Features angegeben, die für das neue XmlWriter-Objekt aktiviert werden sollen.

Wichtiger Hinweis:

Obwohl Microsoft .NET Framework die XmlTextWriter-Klasse enthält, bei der es sich um eine konkrete Implementierung der XmlWriter-Klasse handelt, wird in .NET Framework, Version 2.0, empfohlen, XmlWriter-Instanzen mit der Create-Methode zu erstellen.

Features werden mit den Eigenschaften der XmlWriterSettings-Klasse aktiviert oder deaktiviert. Durch Übergeben eines XmlWriterSettings-Objekts an die Create-Methode werden die zu unterstützenden Writerfeatures angegeben. Die Verwendung der Create-Methode und der XmlWriterSettings-Klasse bietet folgende Vorteile:

  • Sie können angeben, welche Features für das erstellte XmlWriter-Objekt unterstützt werden sollen.

  • Das XmlWriterSettings-Objekt kann erneut verwendet werden, um mehrere Writerobjekte zu erstellen. Das XmlWriterSettings-Objekt wird kopiert und für jeden erstellten Writer als schreibgeschützt markiert. Änderungen von Einstellungen in einer XmlWriterSettings-Instanz wirken sich nicht auf Writer mit denselben Einstellungen aus. Deshalb können Sie dieselben Einstellungen verwenden, um mehrere Writer mit denselben Funktionen zu erstellen. Sie können auch die Einstellungen in einer XmlWriterSettings-Instanz ändern und einen neuen Writer mit einer anderen Gruppe von Features erstellen.

  • Sie können einem vorhandenen Writer Features hinzufügen. Die Create-Methode kann ein anderes XmlWriter-Objekt annehmen. Bei dem zugrunde liegenden XmlWriter-Objekt muss es sich nicht um einen von der statischen Create-Methode erstellten Writer handeln. Sie können beispielsweise einen benutzerdefinierten Writer oder ein XmlTextWriter-Objekt angeben, dem Sie zusätzliche Features hinzufügen möchten.

  • Nutzen Sie die gesamten Vorteile aller neuen Features, die der XmlWriter-Klasse in dieser Version hinzugefügt wurden. Bestimmte Features (z. B. verbesserte Übereinstimmungsprüfung und Übereinstimmung mit der Empfehlung XML 1.0) sind nur in XmlWriter-Objekten verfügbar, die von der statischen Create-Methode erstellt wurden.

Wenn ein XmlWriterSettings-Objekt nicht an die Create-Methode übergeben wird, werden die Standardeinstellungen für den Writer verwendet. In der folgenden Tabelle sind die Standardeinstellungen für die XmlWriterSettings-Klasse aufgeführt.

Eigenschaft

Anfangswert

CheckCharacters

true

CloseOutput

false

ConformanceLevel

ConformanceLevel.Document

Encoding

Encoding.UTF8

Indent

false

IndentChars

Zwei Leerzeichen

NewLineChars

\r\n (Wagenrücklauf, Zeilenumbruch)

NewLineHandling

NewHandling.Replace

NewLineOnAttributes

false

OmitXmlDeclaration

false

Beispiel

Im folgenden Beispiel wird ein XmlWriter erstellt, der an eine XML-Datei ausgegeben wird.

Dim settings As New XmlWriterSettings()
settings.Indent = True
settings.IndentChars = "    "
Using writer As XmlWriter = XmlWriter.Create("books.xml", settings)
  ' Write XML data.
  writer.WriteStartElement("book")
  writer.WriteElementString("price", "19.95")
  writer.WriteEndElement()
  writer.Flush()
End Using
XmlWriterSettings settings = new XmlWriterSettings();
settings.Indent = true;
settings.IndentChars = ("    ");
using (XmlWriter writer = XmlWriter.Create("books.xml", settings)) {
   // Write XML data.
   writer.WriteStartElement("book");
   writer.WriteElementString("price", "19.95");
   writer.WriteEndElement();
   writer.Flush();
}

Siehe auch

Weitere Ressourcen

XML-Dokumente und XML-Daten