创建 XML 编写器

XmlWriter 实例使用静态 XmlWriter.Create 方法创建。

XmlWriter 实例使用 Create 方法创建。 XmlWriterSettings 类用于指定要在新的 XmlWriter 对象上启用的功能集。

重要说明重要事项

尽管在 .NET Framework 2.0 版中,Microsoft .NET Framework 包括 XmlTextWriter 类,该类是 XmlWriter 类的具体实现,但是,建议您使用 Create 方法创建 XmlWriter 实例。

使用 XmlWriterSettings 类的属性启用或禁用功能。 通过将 XmlWriterSettings 对象传递给 Create 方法,指定要支持的写入器功能。 通过使用 Create 方法和 XmlWriterSettings 类,您将得到下列好处:

  • 可以指定要在所创建的 XmlWriter 对象上支持的功能。

  • XmlWriterSettings 对象可以重复使用,以创建多个写入器对象。 将为每个创建的写入器复制 XmlWriterSettings 对象并标记为只读。 更改 XmlWriterSettings 实例上的设置不会影响具有相同设置的现有写入器。 因此,可以使用相同的设置创建多个具有相同功能的写入器。 也可以修改 XmlWriterSettings 实例上的设置并创建具有不同功能集的新写入器。

  • 可以将功能添加到现有写入器中。 Create 方法可以接受其他 XmlWriter 对象。 基础 XmlWriter 对象不必是通过静态 Create 方法创建的写入器。 例如,可以指定用户定义的写入器或要添加附加功能的 XmlTextWriter 对象。

  • 充分利用此版本的 XmlWriter 类中增加的所有新功能。 某些功能只能在通过静态 Create 方法创建的 XmlWriter 对象上使用,例如更好的一致性检查以及与 XML 1.0 建议的一致性。

如果 XmlWriterSettings 对象未传递给 Create 方法,将使用默认的写入器设置。 下表列出 XmlWriterSettings 类的默认设置。

属性

初始值

CheckCharacters

true

CloseOutput

false

ConformanceLevel

ConformanceLevel.Document

Encoding

Encoding.UTF8

Indent

false

IndentChars

两个空格

NewLineChars

\r\n(回车符、换行符)

NewLineHandling

NewHandling.Replace

NewLineOnAttributes

false

OmitXmlDeclaration

false

示例

以下示例创建一个输出到 XML 文件的 XmlWriter

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

请参见

其他资源

XML 文档和数据