TextReader.ReadToEnd Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Считывает все символы, начиная с текущей позиции до конца средства чтения текста, и возвращает их в виде одной строки.
public:
virtual System::String ^ ReadToEnd();
public virtual string ReadToEnd ();
abstract member ReadToEnd : unit -> string
override this.ReadToEnd : unit -> string
Public Overridable Function ReadToEnd () As String
Возвращаемое значение
Строка, содержащая все символы, начиная с текущей позиции до конца средства чтения текста.
Исключения
Ошибка ввода-вывода.
Объект TextReader закрыт.
Не хватает памяти для выделения буфера под возвращаемую строку.
Число символов в следующей строке больше, чем Int32.MaxValue
Комментарии
Если метод создает OutOfMemoryException исключение, позиция читателя в базовом Stream объекте будет расширена на количество символов, которые метод смог прочитать, но символы, которые уже были прочитаны во внутренний ReadToEnd буфер, удаляются. Так как положение средства чтения в потоке изменить невозможно, уже прочитанные символы невозможно восстановить и получить доступ можно только путем повторной инициализации TextReader. Если начальная позиция в потоке неизвестна или поток не поддерживает поиск, базовый Stream объект также необходимо повторно инициализировать.
Чтобы избежать такой ситуации и создать надежный код, следует использовать Read метод и сохранить символы чтения в предварительно выбранном буфере.
Класс TextReader представляет собой абстрактный класс. Следовательно, в коде экземпляр этого объекта не создается. Пример использования ReadToEnd метода см. в StreamReader.ReadToEnd разделе метод .