Поделиться через


XmlWriter Класс

Определение

Представляет модуль записи, предоставляющий быстрый, не кэшированный, доступный только для создания потоков или файлов, содержащих XML-данные.

public ref class XmlWriter abstract : IDisposable
public ref class XmlWriter abstract : IAsyncDisposable, IDisposable
public ref class XmlWriter abstract
public abstract class XmlWriter : IDisposable
public abstract class XmlWriter : IAsyncDisposable, IDisposable
public abstract class XmlWriter
type XmlWriter = class
    interface IDisposable
type XmlWriter = class
    interface IAsyncDisposable
    interface IDisposable
type XmlWriter = class
Public MustInherit Class XmlWriter
Implements IDisposable
Public MustInherit Class XmlWriter
Implements IAsyncDisposable, IDisposable
Public MustInherit Class XmlWriter
Наследование
XmlWriter
Производный
Реализации

Примеры

В следующем примере кода показано, как использовать асинхронный API для создания XML.

async Task TestWriter(Stream stream)
{
    XmlWriterSettings settings = new XmlWriterSettings();
    settings.Async = true;

    using (XmlWriter writer = XmlWriter.Create(stream, settings)) {
        await writer.WriteStartElementAsync("pf", "root", "http://ns");
        await writer.WriteStartElementAsync(null, "sub", null);
        await writer.WriteAttributeStringAsync(null, "att", null, "val");
        await writer.WriteStringAsync("text");
        await writer.WriteEndElementAsync();
        await writer.WriteProcessingInstructionAsync("pName", "pValue");
        await writer.WriteCommentAsync("cValue");
        await writer.WriteCDataAsync("cdata value");
        await writer.WriteEndElementAsync();
        await writer.FlushAsync();
    }
}

Комментарии

Дополнительные сведения об этом API см. в дополнительных примечаниях API для XmlWriter.

Конструкторы

XmlWriter()

Инициализирует новый экземпляр класса XmlWriter.

Свойства

Settings

Возвращает объект XmlWriterSettings, используемый для создания этого экземпляра XmlWriter.

WriteState

При переопределении в производном классе получает состояние модуля записи.

XmlLang

При переопределении в производном классе получает текущую область xml:lang.

XmlSpace

При переопределении в производном классе получает XmlSpace, представляющую текущую область xml:space.

Методы

Close()

При переопределении в производном классе закрывает этот поток и базовый поток.

Create(Stream)

Создает новый экземпляр XmlWriter с помощью указанного потока.

Create(Stream, XmlWriterSettings)

Создает новый экземпляр XmlWriter с помощью потока и объекта XmlWriterSettings.

Create(String)

Создает новый экземпляр XmlWriter с помощью указанного имени файла.

Create(String, XmlWriterSettings)

Создает новый экземпляр XmlWriter с помощью имени файла и объекта XmlWriterSettings.

Create(StringBuilder)

Создает новый экземпляр XmlWriter с помощью указанного StringBuilder.

Create(StringBuilder, XmlWriterSettings)

Создает новый экземпляр XmlWriter с помощью объектов StringBuilder и XmlWriterSettings.

Create(TextWriter)

Создает новый экземпляр XmlWriter с помощью указанного TextWriter.

Create(TextWriter, XmlWriterSettings)

Создает новый экземпляр XmlWriter с помощью объектов TextWriter и XmlWriterSettings.

Create(XmlWriter)

Создает новый экземпляр XmlWriter с помощью указанного объекта XmlWriter.

Create(XmlWriter, XmlWriterSettings)

Создает новый экземпляр XmlWriter с помощью указанных XmlWriter и объектов XmlWriterSettings.

Dispose()

Освобождает все ресурсы, используемые текущим экземпляром класса XmlWriter.

Dispose(Boolean)

Освобождает неуправляемые ресурсы, используемые XmlWriter, и при необходимости освобождает управляемые ресурсы.

DisposeAsync()

Выполняет определяемые приложением задачи, связанные с освобождением, освобождением или асинхронным сбросом неуправляемых ресурсов.

DisposeAsyncCore()

Выполняет определяемые приложением задачи, связанные с освобождением, освобождением или асинхронным сбросом управляемых ресурсов.

Equals(Object)

Определяет, равен ли указанный объект текущему объекту.

(Унаследовано от Object)
Flush()

При переопределении в производном классе очищает все, что находится в буфере, в базовые потоки, а также очищает базовый поток.

FlushAsync()

Асинхронно очищает все, что находится в буфере в базовых потоках, а также очищает базовый поток.

GetHashCode()

Служит хэш-функцией по умолчанию.

(Унаследовано от Object)
GetType()

Возвращает Type текущего экземпляра.

(Унаследовано от Object)
LookupPrefix(String)

При переопределении в производном классе возвращает ближайший префикс, определенный в текущей области пространства имен для URI пространства имен.

MemberwiseClone()

Создает неглубокую копию текущей Object.

(Унаследовано от Object)
ToString()

Возвращает строку, представляющую текущий объект.

(Унаследовано от Object)
WriteAttributes(XmlReader, Boolean)

При переопределении в производном классе записывает все атрибуты, найденные в текущей позиции в XmlReader.

WriteAttributesAsync(XmlReader, Boolean)

Асинхронно записывает все атрибуты, найденные в текущей позиции в XmlReader.

WriteAttributeString(String, String)

При переопределении в производном классе записывает атрибут с указанным локальным именем и значением.

WriteAttributeString(String, String, String)

При переопределении в производном классе записывает атрибут с указанным локальным именем, URI пространства имен и значением.

WriteAttributeString(String, String, String, String)

При переопределении в производном классе записывает атрибут с указанным префиксом, локальным именем, URI пространства имен и значением.

WriteAttributeStringAsync(String, String, String, String)

Асинхронно записывает атрибут с указанным префиксом, локальным именем, URI пространства имен и значением.

WriteBase64(Byte[], Int32, Int32)

При переопределении в производном классе кодирует указанные двоичные байты как Base64 и записывает полученный текст.

WriteBase64Async(Byte[], Int32, Int32)

Асинхронно кодирует указанные двоичные байты как Base64 и записывает полученный текст.

WriteBinHex(Byte[], Int32, Int32)

При переопределении в производном классе кодирует указанные двоичные байты как BinHex и записывает полученный текст.

WriteBinHexAsync(Byte[], Int32, Int32)

Асинхронно кодирует указанные двоичные байты как BinHex и записывает полученный текст.

WriteCData(String)

При переопределении в производном классе записывает <! [CDATA[...]]> блок, содержащий указанный текст.

WriteCDataAsync(String)

Асинхронно записывает <! [CDATA[...]]> блок, содержащий указанный текст.

WriteCharEntity(Char)

При переопределении в производном классе принудительно создает сущность символа для указанного значения символа Юникода.

WriteCharEntityAsync(Char)

Асинхронно заставляет создание сущности символа для указанного значения символа Юникода.

WriteChars(Char[], Int32, Int32)

При переопределении в производном классе записывает текст в один буфер за раз.

WriteCharsAsync(Char[], Int32, Int32)

Асинхронно записывает текст в один буфер за раз.

WriteComment(String)

При переопределении в производном классе записывает комментарий <!--...-->, содержащий указанный текст.

WriteCommentAsync(String)

Асинхронно записывает комментарий, <!--...--> содержащий указанный текст.

WriteDocType(String, String, String, String)

При переопределении в производном классе записывает объявление DOCTYPE с указанным именем и необязательными атрибутами.

WriteDocTypeAsync(String, String, String, String)

Асинхронно записывает объявление DOCTYPE с указанным именем и необязательными атрибутами.

WriteElementString(String, String)

Записывает элемент с указанным локальным именем и значением.

WriteElementString(String, String, String)

Записывает элемент с указанным локальным именем, URI пространства имен и значением.

WriteElementString(String, String, String, String)

Записывает элемент с указанным префиксом, локальным именем, URI пространства имен и значением.

WriteElementStringAsync(String, String, String, String)

Асинхронно записывает элемент с указанным префиксом, локальным именем, URI пространства имен и значением.

WriteEndAttribute()

При переопределении в производном классе закрывает предыдущий вызов WriteStartAttribute(String, String).

WriteEndAttributeAsync()

Асинхронно закрывает предыдущий вызов WriteStartAttribute(String, String).

WriteEndDocument()

При переопределении в производном классе закрывает все открытые элементы или атрибуты и помещает модуль записи обратно в состояние start.

WriteEndDocumentAsync()

Асинхронно закрывает все открытые элементы или атрибуты и помещает модуль записи в состояние "Пуск".

WriteEndElement()

При переопределении в производном классе закрывает один элемент и выводит соответствующую область пространства имен.

WriteEndElementAsync()

Асинхронно закрывает один элемент и выводит соответствующую область пространства имен.

WriteEntityRef(String)

При переопределении в производном классе записывает ссылку на сущность как &name;.

WriteEntityRefAsync(String)

Асинхронно записывает ссылку на сущность как &name;.

WriteFullEndElement()

При переопределении в производном классе закрывает один элемент и выводит соответствующую область пространства имен.

WriteFullEndElementAsync()

Асинхронно закрывает один элемент и выводит соответствующую область пространства имен.

WriteName(String)

При переопределении в производном классе записывает указанное имя, гарантируя, что это допустимое имя в соответствии с рекомендацией W3C XML 1.0 (https://www.w3.org/TR/1998/REC-xml-19980210#NT-Name).

WriteNameAsync(String)

Асинхронно записывает указанное имя, гарантируя, что это допустимое имя в соответствии с рекомендацией W3C XML 1.0 (https://www.w3.org/TR/1998/REC-xml-19980210#NT-Name).

WriteNmToken(String)

При переопределении в производном классе записывает указанное имя, гарантируя, что он является допустимым NmToken в соответствии с рекомендацией W3C XML 1.0 (https://www.w3.org/TR/1998/REC-xml-19980210#NT-Name).

WriteNmTokenAsync(String)

Асинхронно записывает указанное имя, гарантируя, что он является допустимым NmToken в соответствии с рекомендацией W3C XML 1.0 (https://www.w3.org/TR/1998/REC-xml-19980210#NT-Name).

WriteNode(XmlReader, Boolean)

При переопределении в производном классе копирует все данные от читателя к средству записи и перемещает читателя в начало следующего брата.

WriteNode(XPathNavigator, Boolean)

Копирует все данные из объекта XPathNavigator в модуль записи. Позиция XPathNavigator остается неизменной.

WriteNodeAsync(XmlReader, Boolean)

Асинхронно копирует все данные от средства чтения к записи и перемещает читателя в начало следующего брата.

WriteNodeAsync(XPathNavigator, Boolean)

Асинхронно копирует все данные из объекта XPathNavigator в модуль записи. Позиция XPathNavigator остается неизменной.

WriteProcessingInstruction(String, String)

При переопределении в производном классе записывает инструкцию обработки с пробелом между именем и текстом следующим образом: <?name text?>.

WriteProcessingInstructionAsync(String, String)

Асинхронно записывает инструкцию обработки с пробелом между именем и текстом следующим образом: <?name text?>.

WriteQualifiedName(String, String)

При переопределении в производном классе записывает полное имя пространства имен. Этот метод ищет префикс, который находится в области для заданного пространства имен.

WriteQualifiedNameAsync(String, String)

Асинхронно записывает полное имя пространства имен. Этот метод ищет префикс, который находится в области для заданного пространства имен.

WriteRaw(Char[], Int32, Int32)

При переопределении в производном классе записывает необработанную разметку вручную из буфера символов.

WriteRaw(String)

При переопределении в производном классе записывает необработанную разметку вручную из строки.

WriteRawAsync(Char[], Int32, Int32)

Асинхронно записывает необработанную разметку вручную из буфера символов.

WriteRawAsync(String)

Асинхронно записывает необработанную разметку вручную из строки.

WriteStartAttribute(String)

Записывает начало атрибута с указанным локальным именем.

WriteStartAttribute(String, String)

Записывает начало атрибута с указанным локальным именем и URI пространства имен.

WriteStartAttribute(String, String, String)

При переопределении в производном классе записывает начало атрибута с указанным префиксом, локальным именем и URI пространства имен.

WriteStartAttributeAsync(String, String, String)

Асинхронно записывает начало атрибута с указанным префиксом, локальным именем и URI пространства имен.

WriteStartDocument()

При переопределении в производном классе записывает xml-объявление с версией "1.0".

WriteStartDocument(Boolean)

При переопределении в производном классе записывает объявление XML с версией "1.0" и автономным атрибутом.

WriteStartDocumentAsync()

Асинхронно записывает xml-объявление с версией 1.0.

WriteStartDocumentAsync(Boolean)

Асинхронно записывает объявление XML с версией "1.0" и автономным атрибутом.

WriteStartElement(String)

При переопределении в производном классе записывает начальный тег с указанным локальным именем.

WriteStartElement(String, String)

При переопределении в производном классе записывает указанный тег запуска и связывает его с заданным пространством имен.

WriteStartElement(String, String, String)

При переопределении в производном классе записывает указанный тег начала и связывает его с заданным пространством имен и префиксом.

WriteStartElementAsync(String, String, String)

Асинхронно записывает указанный тег запуска и связывает его с заданным пространством имен и префиксом.

WriteString(String)

При переопределении в производном классе записывает заданное текстовое содержимое.

WriteStringAsync(String)

Асинхронно записывает заданное текстовое содержимое.

WriteSurrogateCharEntity(Char, Char)

При переопределении в производном классе создает и записывает суррогатную сущность символа для суррогатной пары символов.

WriteSurrogateCharEntityAsync(Char, Char)

Асинхронно создает и записывает суррогатную сущность символа для суррогатной пары символов.

WriteValue(Boolean)

Записывает значение Boolean.

WriteValue(DateTime)

Записывает значение DateTime.

WriteValue(DateTimeOffset)

Записывает значение DateTimeOffset.

WriteValue(Decimal)

Записывает значение Decimal.

WriteValue(Double)

Записывает значение Double.

WriteValue(Int32)

Записывает значение Int32.

WriteValue(Int64)

Записывает значение Int64.

WriteValue(Object)

Записывает значение объекта.

WriteValue(Single)

Записывает число с плавающей запятой с одной точностью.

WriteValue(String)

Записывает значение String.

WriteWhitespace(String)

При переопределении в производном классе записывает заданное пробел.

WriteWhitespaceAsync(String)

Асинхронно записывает заданное пробел.

Явные реализации интерфейса

IDisposable.Dispose()

Описание этого элемента см. в разделе Dispose().

Методы расширения

ConfigureAwait(IAsyncDisposable, Boolean)

Настраивает способ ожидания задач, возвращаемых из асинхронного удаления.

Применяется к

См. также раздел