NIB: создание модуля записи XML

Экземпляры класса XmlWriter создаются с помощью статического метода XmlWriter.Create.

Экземпляры XmlWriter создаются с помощью метода Create.Класс XmlWriterSettings используется для задания набора функций, которые необходимо включить в новый объект XmlWriter.

Важно!

Хотя платформа Microsoft .NET Framework содержит класс XmlTextWriter, являющийся конкретной реализацией класса XmlWriter в версии 2.0 платформы .NET Framework, рекомендуется создавать экземпляры XmlWriter с помощью метода Create.

Функции включаются и выключаются с помощью свойств класса XmlWriterSettings.Передавая объект XmlWriterSettings в метод Create можно указать, какие функции модуля записи поддерживаются.Использование метода Create и класса XmlWriterSettings дает следующие преимущества:

  • Можно указать, какие возможности нужно поддерживать в создаваемом объекте XmlWriter.

  • Объект XmlWriterSettings можно повторно использовать для создания нескольких модулей записи.Объект XmlWriterSettings копируется и помечается признаком «только для чтения» для каждого созданного модуля записи.Изменения в настройках экземпляра XmlWriterSettings не влияют на существующие модули записи с такими же настройками.Таким образом, можно создать несколько модулей записи с одинаковой функциональностью, используя одинаковые настройки.Или можно изменить экземпляр XmlWriterSettings и создать новый модуль записи с другим набором функций.

  • Можно добавить функции к существующему модулю записи.Метод Create может принимать другой объект XmlWriter.Базовый объект XmlWriter не обязательно должен являться модулем записи, созданным с помощью статического метода Create.Например, можно указать пользовательский модуль записи или объект XmlTextWriter, к которому необходимо добавить дополнительные функции.

  • Используйте в полной мере новые функции, добавленные в класс XmlWriter в этой версии.Существуют определенные функции, такие как улучшенная проверка на согласованность или соответствие стандарту XML 1.0, которые доступны только для объектов XmlWriter, созданных статическим методом Create.

Если объект 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

Примеры

В следующем примере создается объект XmlWriter, который выводит данные в XML-файл.

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-документы и данные