TextReader.ReadAsync Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Перегрузки
| Имя | Описание |
|---|---|
| ReadAsync(Memory<Char>, CancellationToken) |
Асинхронно считывает символы из текущего потока в блок памяти. |
| ReadAsync(Char[], Int32, Int32) |
Считывает указанное максимальное количество символов из текущего средства чтения текста асинхронно и записывает данные в буфер, начиная с указанного индекса. |
ReadAsync(Memory<Char>, CancellationToken)
- Исходный код:
- TextReader.cs
- Исходный код:
- TextReader.cs
- Исходный код:
- TextReader.cs
- Исходный код:
- TextReader.cs
- Исходный код:
- TextReader.cs
Асинхронно считывает символы из текущего потока в блок памяти.
public virtual System.Threading.Tasks.ValueTask<int> ReadAsync(Memory<char> buffer, System.Threading.CancellationToken cancellationToken = default);
abstract member ReadAsync : Memory<char> * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<int>
override this.ReadAsync : Memory<char> * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<int>
Public Overridable Function ReadAsync (buffer As Memory(Of Char), Optional cancellationToken As CancellationToken = Nothing) As ValueTask(Of Integer)
Параметры
При возврате этого метода содержит указанный блок памяти символов, замененных символами, считываемыми из текущего источника.
- cancellationToken
- CancellationToken
Маркер для отслеживания запросов на отмену. Значение по умолчанию — None.
Возвращаемое значение
Задача значения, представляющая асинхронную операцию чтения. Значение параметра типа содержит число символов, которые были прочитаны или 0, если в конце потока и данные не были прочитаны. Число будет меньше или равно buffer длине в зависимости от того, доступны ли данные в потоке.
Исключения
Маркер отмены был отменен. Это исключение хранится в возвращаемой задаче.
Применяется к
ReadAsync(Char[], Int32, Int32)
- Исходный код:
- TextReader.cs
- Исходный код:
- TextReader.cs
- Исходный код:
- TextReader.cs
- Исходный код:
- TextReader.cs
- Исходный код:
- TextReader.cs
Считывает указанное максимальное количество символов из текущего средства чтения текста асинхронно и записывает данные в буфер, начиная с указанного индекса.
public:
virtual System::Threading::Tasks::Task<int> ^ ReadAsync(cli::array <char> ^ buffer, int index, int count);
public virtual System.Threading.Tasks.Task<int> ReadAsync(char[] buffer, int index, int count);
[System.Runtime.InteropServices.ComVisible(false)]
public virtual System.Threading.Tasks.Task<int> ReadAsync(char[] buffer, int index, int count);
abstract member ReadAsync : char[] * int * int -> System.Threading.Tasks.Task<int>
override this.ReadAsync : char[] * int * int -> System.Threading.Tasks.Task<int>
[<System.Runtime.InteropServices.ComVisible(false)>]
abstract member ReadAsync : char[] * int * int -> System.Threading.Tasks.Task<int>
override this.ReadAsync : char[] * int * int -> System.Threading.Tasks.Task<int>
Public Overridable Function ReadAsync (buffer As Char(), index As Integer, count As Integer) As Task(Of Integer)
Параметры
- buffer
- Char[]
При возврате этого метода содержит указанный массив символов со значениями между index и (index + count - 1), замененными символами, считываемыми из текущего источника.
- index
- Int32
Позиция, с которой buffer начать писать.
- count
- Int32
Максимальное число символов для чтения. Если конец текста достигается до того, как указанное число символов считывается в буфер, текущий метод возвращается.
Возвращаемое значение
Задача, представляющая асинхронную операцию чтения. Значение TResult параметра содержит общее количество байтов, считываемых в буфер. Значение результата может быть меньше числа запрошенных байтов, если число доступных в данный момент байтов меньше запрошенного числа или может быть равно 0 (ноль), если достигнут конец текста.
- Атрибуты
Исключения
buffer равно null.
index или count отрицательный.
index Сумма и count больше длины буфера.
Средство чтения текста удалено.
В настоящее время средство чтения используется предыдущей операцией чтения.
Комментарии
Задача завершается после того, как число символов, указанных count параметром, считывается или заканчивается файл.
Класс TextReader является абстрактным классом. Поэтому вы не создаете экземпляр в коде. Пример использования ReadAsync метода см. в описании StreamReader.ReadAsync метода.
Этот метод сохраняет в задаче все исключения без использования, которые может вызывать синхронный аналог метода. Если исключение хранится в возвращаемой задаче, это исключение будет создано при ожидании задачи. Исключения использования, такие как ArgumentException, по-прежнему выбрасываются синхронно. Сведения о сохраненных исключениях см. в исключениях, создаваемых Read(Char[], Int32, Int32).
См. также раздел
- ReadAsync(Char[], Int32, Int32)
- ReadAsync(Char[], Int32, Int32)
- Файловый и потоковый ввод-вывод
- Практическое руководство. Чтение текста из файла
- Практическое руководство. Запись текста в файл