TextReader.ReadLine Метод

Определение

Выполняет чтение строки символов из средства чтения текста и возвращает данные в виде строки.

public:
 virtual System::String ^ ReadLine();
public virtual string ReadLine ();
public virtual string? ReadLine ();
abstract member ReadLine : unit -> string
override this.ReadLine : unit -> string
Public Overridable Function ReadLine () As String

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

Следующая строка из средства чтения или значение null, если все символы считаны.

Исключения

Ошибка ввода-вывода.

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

Объект TextReader закрыт.

Число символов в следующей строке больше, чем Int32.MaxValue

Комментарии

Строка определяется как последовательность символов, за которой следует возврат каретки (0x000d), перевод строки (0x000a), возврат каретки, за которым следует перевод строки, Environment.NewLineили маркер конца потока. Возвращаемая строка не содержит завершающего возврата каретки или перевода строки. Возвращаемое значение равно , null если достигнут конец входного потока.

Если метод создает OutOfMemoryException исключение, позиция читателя в базовом Stream объекте будет расширена на количество символов, которые метод смог прочитать, но символы, которые уже были прочитаны во внутренний ReadLine буфер, удаляются. Так как положение средства чтения в потоке изменить нельзя, уже прочитанные символы невозможно восстановить и получить доступ можно только путем повторной инициализации TextReader объекта . Если начальная позиция в потоке неизвестна или поток не поддерживает поиск, базовый Stream объект также необходимо повторно инициализировать.

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

Класс TextReader представляет собой абстрактный класс. Следовательно, в коде экземпляр этого объекта не создается. Пример использования ReadLine метода см. в StreamReader.ReadLine разделе метод .

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

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