TextWriter Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Представляет модуль записи, который может записывать последовательный ряд символов. Этот класс является абстрактным.
public ref class TextWriter abstract : IDisposable
public ref class TextWriter abstract : MarshalByRefObject, IDisposable
public ref class TextWriter abstract : MarshalByRefObject, IAsyncDisposable, IDisposable
public abstract class TextWriter : IDisposable
[System.Serializable]
public abstract class TextWriter : MarshalByRefObject, IDisposable
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public abstract class TextWriter : MarshalByRefObject, IDisposable
public abstract class TextWriter : MarshalByRefObject, IDisposable
public abstract class TextWriter : MarshalByRefObject, IAsyncDisposable, IDisposable
type TextWriter = class
interface IDisposable
[<System.Serializable>]
type TextWriter = class
inherit MarshalByRefObject
interface IDisposable
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type TextWriter = class
inherit MarshalByRefObject
interface IDisposable
type TextWriter = class
inherit MarshalByRefObject
interface IDisposable
type TextWriter = class
inherit MarshalByRefObject
interface IAsyncDisposable
interface IDisposable
Public MustInherit Class TextWriter
Implements IDisposable
Public MustInherit Class TextWriter
Inherits MarshalByRefObject
Implements IDisposable
Public MustInherit Class TextWriter
Inherits MarshalByRefObject
Implements IAsyncDisposable, IDisposable
- Наследование
-
TextWriter
- Наследование
- Производный
- Атрибуты
- Реализации
Примеры
Класс TextWriter является абстрактным классом. Поэтому вы не создаете экземпляр в коде. Класс StreamWriter является производным от TextWriter и предоставляет реализации элементов для записи в поток. В следующем примере показано, как написать две строки, состоящие из строковых значений в текстовый файл с помощью WriteLineAsync(String) метода.
using System.IO;
namespace ConsoleApplication
{
class Program4
{
static void Main()
{
WriteCharacters();
}
static async void WriteCharacters()
{
using (StreamWriter writer = File.CreateText("newfile.txt"))
{
await writer.WriteLineAsync("First line of example");
await writer.WriteLineAsync("and second line");
}
}
}
}
Imports System.IO
Imports System.Text
Module Module1
Sub Main()
WriteCharacters()
End Sub
Async Sub WriteCharacters()
Using writer As StreamWriter = File.CreateText("newfile.txt")
Await writer.WriteLineAsync("First line of example")
Await writer.WriteLineAsync("and second line")
End Using
End Sub
End Module
Комментарии
TextWriter — абстрактный базовый класс StreamWriter и StringWriter, который записывает символы в потоки и строки соответственно. Используйте экземпляр TextWriter для записи объекта в строку, записи строк в файл или сериализации XML. Можно также использовать экземпляр TextWriter для записи текста в пользовательское хранилище резервного копирования с помощью тех же API, которые будут использоваться для строки или потока, или для добавления поддержки форматирования текста.
Write Все методы примитивных TextWriter типов данных в качестве параметров записывают значения в виде строк.
По умолчанию TextWriter не является потокобезопасной. См TextWriter.Synchronized . сведения о потокобезопасной оболочке.
Important
Этот тип реализует IDisposable интерфейс. Завершив использование любого типа, наследуемого от этого типа, его следует удалить напрямую или косвенно. Чтобы удалить тип напрямую, вызовите его Dispose метод в блоке try/catch . Чтобы удалить его косвенно, используйте конструкцию языка, например using (в C#) или Using (в Visual Basic). Дополнительные сведения см. в разделе Dispose и разделе "Использование объекта, реализующего IDisposable" в IDisposable разделе интерфейса.
Список распространенных задач ввода-вывода см. в разделе Распространенные задачи ввода-вывода.
Примечания для тех, кто реализует этот метод
Производный класс должен минимально реализовать Write(Char) метод, чтобы сделать полезный экземпляр TextWriter.
Конструкторы
| Имя | Описание |
|---|---|
| TextWriter() |
Инициализирует новый экземпляр класса TextWriter. |
| TextWriter(IFormatProvider) |
Инициализирует новый экземпляр TextWriter класса с указанным поставщиком формата. |
Поля
| Имя | Описание |
|---|---|
| CoreNewLine |
Сохраняет новые символы, используемые для этого |
| Null |
Предоставляет хранилище без резервного |
Свойства
| Имя | Описание |
|---|---|
| Encoding |
При переопределении в производном классе возвращает кодировку символов, в которой записываются выходные данные. |
| FormatProvider |
Возвращает объект, который управляет форматированием. |
| NewLine |
Возвращает или задает строку конца строки, используемую текущим |
Методы
| Имя | Описание |
|---|---|
| Close() |
Закрывает текущий модуль записи и освобождает все системные ресурсы, связанные с средством записи. |
| CreateObjRef(Type) |
Создает объект, содержащий все соответствующие сведения, необходимые для создания прокси-сервера, используемого для взаимодействия с удаленным объектом. (Унаследовано от MarshalByRefObject) |
| Dispose() |
Освобождает все ресурсы, используемые TextWriter объектом. |
| Dispose(Boolean) |
Освобождает неуправляемые ресурсы, используемые TextWriter и при необходимости освобождает управляемые ресурсы. |
| DisposeAsync() |
Асинхронно освобождает все ресурсы, используемые TextWriter объектом. |
| Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
| Flush() |
Очищает все буферы для текущего модуля записи и приводит к записи буферных данных на базовое устройство. |
| FlushAsync() |
Асинхронно очищает все буферы для текущего модуля записи и приводит к записи буферных данных на базовое устройство. |
| GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
| GetLifetimeService() |
Извлекает текущий объект службы времени существования, который управляет политикой времени существования для этого экземпляра. (Унаследовано от MarshalByRefObject) |
| GetType() |
Возвращает Type текущего экземпляра. (Унаследовано от Object) |
| InitializeLifetimeService() |
Получает объект службы времени существования для управления политикой времени существования для этого экземпляра. (Унаследовано от MarshalByRefObject) |
| MemberwiseClone() |
Создает неглубокую копию текущей Object. (Унаследовано от Object) |
| MemberwiseClone(Boolean) |
Создает неглубокую копию текущего MarshalByRefObject объекта. (Унаследовано от MarshalByRefObject) |
| Synchronized(TextWriter) |
Создает потокобезопасную оболочку вокруг указанного |
| ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |
| Write(Boolean) |
Записывает текстовое представление значения |
| Write(Char) |
Записывает символ в текстовый поток. |
| Write(Char[], Int32, Int32) |
Записывает вложенные символы в текстовый поток. |
| Write(Char[]) |
Записывает массив символов в текстовый поток. |
| Write(Decimal) |
Записывает текстовое представление десятичного значения в текстовый поток. |
| Write(Double) |
Записывает текстовое представление 8-байтового значения с плавающей запятой в текстовый поток. |
| Write(Int32) |
Записывает текстовое представление 4-байтового целого числа со знаком в текстовый поток. |
| Write(Int64) |
Записывает текстовое представление 8-байтового целого числа со знаком в текстовый поток. |
| Write(Object) |
Записывает текстовое представление объекта в текстовый поток, вызвав метод |
| Write(ReadOnlySpan<Char>) |
Записывает диапазон символов в текстовый поток. |
| Write(Single) |
Записывает текстовое представление 4-байтового значения с плавающей запятой в текстовый поток. |
| Write(String, Object, Object, Object) |
Записывает форматированную строку в текстовый поток, используя ту же семантику, что и метод Format(String, Object, Object, Object). |
| Write(String, Object, Object) |
Записывает форматированную строку в текстовый поток, используя ту же семантику, что и метод Format(String, Object, Object). |
| Write(String, Object) |
Записывает форматированную строку в текстовый поток, используя ту же семантику, что и метод Format(String, Object). |
| Write(String, Object[]) |
Записывает форматированную строку в текстовый поток, используя ту же семантику, что и метод Format(String, Object[]). |
| Write(String) |
Записывает строку в текстовый поток. |
| Write(UInt32) |
Записывает текстовое представление 4-байтового целого числа без знака в текстовый поток. |
| Write(UInt64) |
Записывает текстовое представление 8-байтового целого числа без знака в текстовый поток. |
| WriteAsync(Char) |
Записывает символ в текстовый поток асинхронно. |
| WriteAsync(Char[], Int32, Int32) |
Записывает вложенные символы в текстовый поток асинхронно. |
| WriteAsync(Char[]) |
Записывает массив символов в текстовый поток асинхронно. |
| WriteAsync(ReadOnlyMemory<Char>, CancellationToken) |
Асинхронно записывает область памяти символов в текстовый поток. |
| WriteAsync(String) |
Записывает строку в текстовый поток асинхронно. |
| WriteLine() |
Записывает конца строки в текстовый поток. |
| WriteLine(Boolean) |
Записывает текстовое представление |
| WriteLine(Char) |
Записывает символ в текстовый поток, за которым следует терминатор строки. |
| WriteLine(Char[], Int32, Int32) |
Записывает вложенные символы в текстовый поток, за которым следует терминатор строки. |
| WriteLine(Char[]) |
Записывает массив символов в текстовый поток, за которым следует константатор строки. |
| WriteLine(Decimal) |
Записывает текстовое представление десятичного значения в текстовый поток, за которым следует терминатор строки. |
| WriteLine(Double) |
Записывает текстовое представление 8-байтового значения с плавающей запятой в текстовый поток, за которым следует терминатор строки. |
| WriteLine(Int32) |
Записывает текстовое представление 4-байтового целого числа со знаком в текстовый поток, за которым следует терминатор строки. |
| WriteLine(Int64) |
Записывает текстовое представление целого числа со знаком 8 байтов в текстовый поток, за которым следует терминатор строки. |
| WriteLine(Object) |
Записывает текстовое представление объекта в текстовый поток, вызывая |
| WriteLine(ReadOnlySpan<Char>) |
Записывает текстовое представление диапазона символов в текстовый поток, за которым следует терминатор строки. |
| WriteLine(Single) |
Записывает текстовое представление 4-байтового значения с плавающей запятой в текстовый поток, а затем конца строки. |
| WriteLine(String, Object, Object, Object) |
Записывает форматированную строку и новую строку в текстовый поток, используя ту же семантику, что Format(String, Object)и . |
| WriteLine(String, Object, Object) |
Записывает форматированную строку и новую строку в текстовый поток, используя ту же семантику, что Format(String, Object, Object) и метод. |
| WriteLine(String, Object) |
Записывает форматированную строку и новую строку в текстовый поток, используя ту же семантику, что Format(String, Object) и метод. |
| WriteLine(String, Object[]) |
Записывает форматированную строку и новую строку в текстовый поток, используя ту же семантику, что Format(String, Object)и . |
| WriteLine(String) |
Записывает строку в текстовый поток, за которой следует терминатор строки. |
| WriteLine(UInt32) |
Записывает текстовое представление 4-байтового целого числа без знака в текстовый поток, за которым следует терминатор строки. |
| WriteLine(UInt64) |
Записывает текстовое представление 8-байтового целого числа без знака в текстовый поток, а затем конца строки. |
| WriteLineAsync() |
Асинхронно записывает конца строки в текстовый поток. |
| WriteLineAsync(Char) |
Асинхронно записывает символ в текстовый поток, за которым следует терминатор строки. |
| WriteLineAsync(Char[], Int32, Int32) |
Асинхронно записывает вложенные символы в текстовый поток, за которым следует терминатор строки. |
| WriteLineAsync(Char[]) |
Асинхронно записывает массив символов в текстовый поток, за которым следует терминатор строки. |
| WriteLineAsync(ReadOnlyMemory<Char>, CancellationToken) |
Асинхронно записывает текстовое представление области памяти символов в текстовый поток, за которым следует терминатор строки. |
| WriteLineAsync(String) |
Асинхронно записывает строку в текстовый поток, за которым следует терминатор строки. |
Явные реализации интерфейса
| Имя | Описание |
|---|---|
| IDisposable.Dispose() |
Описание этого элемента см. в разделе Dispose(). |
Методы расширения
| Имя | Описание |
|---|---|
| ConfigureAwait(IAsyncDisposable, Boolean) |
Настраивает способ ожидания задач, возвращаемых из асинхронного удаления. |