XmlWriterSettings XmlWriterSettings XmlWriterSettings XmlWriterSettings Class


Specifies a set of features to support on the XmlWriter object created by the Create method.

public ref class XmlWriterSettings sealed
public sealed class XmlWriterSettings
type XmlWriterSettings = class
Public NotInheritable Class XmlWriterSettings


The following example creates an XmlWriter that writes to an XML file and writes each attribute on a new line.

XmlWriterSettings settings = new XmlWriterSettings();
settings.Indent = true;
settings.OmitXmlDeclaration = true;
settings.NewLineOnAttributes = true;
writer = XmlWriter.Create(Console.Out, settings);

writer.WriteAttributeString("orderID", "367A54");
writer.WriteAttributeString("date", "2001-05-03");
writer.WriteElementString("price", "19.95");
Dim settings As XmlWriterSettings = New XmlWriterSettings()
settings.Indent = true
settings.OmitXmlDeclaration = true
settings.NewLineOnAttributes = true
writer = XmlWriter.Create(Console.Out, settings)

writer.WriteAttributeString("orderID", "367A54")
writer.WriteAttributeString("date", "2001-05-03")
writer.WriteElementString("price", "19.95")

The sample produces the following output:



The Create method is the preferred mechanism for obtaining XmlWriter instances. The Create method uses the XmlWriterSettings class to specify which features to implement in the XmlWriter object that is created.


If you're using the XmlWriter object with the Transform method, you should use the OutputSettings property to obtain an XmlWriterSettings object with the correct settings. This ensures that the created XmlWriter object has the correct output settings.

The XmlWriterSettings class provides properties that control data conformance and output format.

For data conformance checks and auto-corrections, use these properties:

Property Specifies Value Default
CheckCharacters Whether to check that characters are in the legal XML character set, as defined by W3C. true or false true
ConformanceLevel Whether to check that output is a well-formed XML 1.0 document or fragment. ConformanceLevel.Document (document-level), Fragment (fragment-level), or Auto (auto-detection) ConformanceLevel.Document (document-level conformance)
WriteEndDocumentOnClose Whether to add closing tags to all unclosed elements when the Close method is called. true or false true

To specify output format, use these properties:

Property Specifies Value Default
Encoding Text encoding to use. System.Text.Encoding value Encoding.UTF8
Indent Whether to indent elements true or false false (no indentation)
IndentChars Character string to use when indenting (used when Indent is set to true). String Two spaces
NewLineChars Character string to use for line breaks. String \r\n (carriage return, line feed)
NewLineHandling How to handle newline characters. System.Xml.NewLineHandling value: Entitize (normalize), Replace (replace), or None (leave unchanged) Replace (replace with characters specified by NewLineChars)
NewLineOnAttributes Whether to write attributes on individual lines (has no effect when Indent is false). true or false false
OmitXmlDeclaration Whether to write an XML declaration. true or false false


XmlWriterSettings() XmlWriterSettings() XmlWriterSettings() XmlWriterSettings()

Initializes a new instance of the XmlWriterSettings class.


Async Async Async Async

Gets or sets a value that indicates whether asynchronous XmlWriter methods can be used on a particular XmlWriter instance.

CheckCharacters CheckCharacters CheckCharacters CheckCharacters

Gets or sets a value that indicates whether the XML writer should check to ensure that all characters in the document conform to the "2.2 Characters" section of the W3C XML 1.0 Recommendation.

CloseOutput CloseOutput CloseOutput CloseOutput

Gets or sets a value indicating whether the XmlWriter should also close the underlying stream or TextWriter when the Close() method is called.

ConformanceLevel ConformanceLevel ConformanceLevel ConformanceLevel

Gets or sets the level of conformance that the XML writer checks the XML output for.

DoNotEscapeUriAttributes DoNotEscapeUriAttributes DoNotEscapeUriAttributes DoNotEscapeUriAttributes

Gets or sets a value that indicates whether the XmlWriter does not escape URI attributes.

Encoding Encoding Encoding Encoding

Gets or sets the type of text encoding to use.

Indent Indent Indent Indent

Gets or sets a value indicating whether to indent elements.

IndentChars IndentChars IndentChars IndentChars

Gets or sets the character string to use when indenting. This setting is used when the Indent property is set to true.

NamespaceHandling NamespaceHandling NamespaceHandling NamespaceHandling

Gets or sets a value that indicates whether the XmlWriter should remove duplicate namespace declarations when writing XML content. The default behavior is for the writer to output all namespace declarations that are present in the writer's namespace resolver.

NewLineChars NewLineChars NewLineChars NewLineChars

Gets or sets the character string to use for line breaks.

NewLineHandling NewLineHandling NewLineHandling NewLineHandling

Gets or sets a value indicating whether to normalize line breaks in the output.

NewLineOnAttributes NewLineOnAttributes NewLineOnAttributes NewLineOnAttributes

Gets or sets a value indicating whether to write attributes on a new line.

OmitXmlDeclaration OmitXmlDeclaration OmitXmlDeclaration OmitXmlDeclaration

Gets or sets a value indicating whether to omit an XML declaration.

OutputMethod OutputMethod OutputMethod OutputMethod

Gets the method used to serialize the XmlWriter output.

WriteEndDocumentOnClose WriteEndDocumentOnClose WriteEndDocumentOnClose WriteEndDocumentOnClose

Gets or sets a value that indicates whether the XmlWriter will add closing tags to all unclosed element tags when the Close() method is called.


Clone() Clone() Clone() Clone()

Creates a copy of the XmlWriterSettings instance.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Serves as the default hash function.

(Inherited from Object)
GetType() GetType() GetType() GetType()

Gets the Type of the current instance.

(Inherited from Object)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Creates a shallow copy of the current Object.

(Inherited from Object)
Reset() Reset() Reset() Reset()

Resets the members of the settings class to their default values.

ToString() ToString() ToString() ToString()

Returns a string that represents the current object.

(Inherited from Object)

Applies to