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


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 .

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

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