Прочитать на английском

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


StreamReader.ReadToEndAsync Метод

Определение

Перегрузки

ReadToEndAsync()

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

ReadToEndAsync(CancellationToken)

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

ReadToEndAsync()

Исходный код:
StreamReader.cs
Исходный код:
StreamReader.cs
Исходный код:
StreamReader.cs

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

public override System.Threading.Tasks.Task<string> ReadToEndAsync ();
[System.Runtime.InteropServices.ComVisible(false)]
public override System.Threading.Tasks.Task<string> ReadToEndAsync ();

Возвращаемое значение

Задача, представляющая асинхронную операцию чтения. Значение параметра TResult содержит строку с символами от текущего положения до конца потока.

Атрибуты

Исключения

Количество символов больше, чем Int32.MaxValue.

Поток был удален.

Модуль чтения в настоящее время используется предыдущей операцией чтения.

Примеры

В следующем примере показано, как считывать содержимое файла с помощью ReadToEndAsync() метода .

using System;
using System.IO;

namespace ConsoleApplication
{
    class Program
    {
        static async Task Main()
        {
            await ReadCharacters();
        }

        static async Task ReadCharacters()
        {
            String result;
            using (StreamReader reader = File.OpenText("existingfile.txt"))
            {
                Console.WriteLine("Opened file.");
                result = await reader.ReadToEndAsync();
                Console.WriteLine("Contains: " + result);
            }
        }
    }
}

Комментарии

Этот метод сохраняет в задаче все исключения, не относящиеся к использованию, которые может создавать синхронный аналог метода. Если исключение сохраняется в возвращаемой задаче, это исключение будет создано при ожидании задачи. Исключения использования, такие как ArgumentException, по-прежнему создаются синхронно. Хранимые исключения см. в разделе исключения, создаваемые ReadToEnd().

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

.NET 9 и другие версии
Продукт Версии
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0

ReadToEndAsync(CancellationToken)

Исходный код:
StreamReader.cs
Исходный код:
StreamReader.cs
Исходный код:
StreamReader.cs

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

public override System.Threading.Tasks.Task<string> ReadToEndAsync (System.Threading.CancellationToken cancellationToken);

Параметры

cancellationToken
CancellationToken

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

Возвращаемое значение

Задача, представляющая асинхронную операцию чтения. Значение параметра TResult содержит строку с символами от текущего положения до конца потока.

Исключения

Количество символов больше, чем Int32.MaxValue.

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

Модуль чтения в настоящее время используется предыдущей операцией чтения.

Маркер отмены был отменен. Это исключение сохраняется в возвращаемой задаче.

Комментарии

Если этот метод отменяется с помощью cancellationToken, некоторые данные, которые были считаны из текущего Stream , но не сохранены (с помощью StreamReader) или возвращены (вызывающей объекту), могут быть потеряны.

Этот метод сохраняет в задаче все исключения, не относящиеся к использованию, которые может создавать синхронный аналог метода. Если исключение сохраняется в возвращаемой задаче, это исключение будет создано при ожидании задачи. Исключения использования, такие как ArgumentException, по-прежнему создаются синхронно. Хранимые исключения см. в разделе исключения, создаваемые ReadToEnd().

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

.NET 9 и другие версии
Продукт Версии
.NET 7, 8, 9