TextReader.ReadLine TextReader.ReadLine TextReader.ReadLine TextReader.ReadLine Method

Определение

Выполняет чтение строки символов из средства чтения текста и возвращает данные в виде строки.Reads a line of characters from the text reader and returns the data as a string.

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

Возвраты

Следующая строка из средства чтения, или значение null, если все символы считаны.The next line from the reader, or null if all characters have been read.

Исключения

Ошибка ввода-вывода.An I/O error occurs.

Не хватает памяти для выделения буфера под возвращаемую строку.There is insufficient memory to allocate a buffer for the returned string.

Количество символов в следующей строке большеThe number of characters in the next line is larger than MaxValue

Комментарии

Строка определяется как последовательность символов, следуют символ возврата каретки (0x000d), перевода строки (0x000a), возврат каретки следуют знак перевода строки Environment.NewLine, или маркер окончания потока.A line is defined as a sequence of characters followed by a carriage return (0x000d), a line feed (0x000a), a carriage return followed by a line feed, Environment.NewLine, or the end-of-stream marker. Возвращаемая строка содержит завершающий символ возврата каретки или перевода строки.The string that is returned does not contain the terminating carriage return or line feed. Возвращает значение null если достигнут конец входного потока.The return value is null if the end of the input stream has been reached.

Если метод порождает OutOfMemoryException исключение, позиция средства чтения в базовом Stream увеличивается на число знаков, которое может читать метод, но символы, которые уже были считаны во внутренний ReadLine являются буфера удаляются.If the method throws an OutOfMemoryException exception, the reader's position in the underlying Stream is advanced by the number of characters the method was able to read, but the characters that were already read into the internal ReadLine buffer are discarded. Так как невозможно изменить позицию средства чтения в потоке, знаки, которые уже были считаны неустранимой и может осуществляться только при повторной инициализации TextReader объекта.Because the position of the reader in the stream cannot be changed, the characters that were already read are unrecoverable and can be accessed only by reinitializing the TextReader object. Если начальная позиция в потоке неизвестна или поток не поддерживает поиск, базовый Stream также должна быть повторно инициализирована.If the initial position within the stream is unknown or the stream does not support seeking, the underlying Stream also needs to be reinitialized.

Чтобы избежать такой ситуации и создать надежный код, следует использовать Read метод и хранилищем чтения знаки в предварительно выделенной буфере.To avoid such a situation and produce robust code you should use the Read method and store the read characters in a preallocated buffer.

Класс TextReader является абстрактным.The TextReader class is an abstract class. Следовательно, в коде экземпляр этого объекта не создается.Therefore, you do not instantiate it in your code. Например, с помощью ReadLine метод, см. в разделе StreamReader.ReadLine метод.For an example of using the ReadLine method, see the StreamReader.ReadLine method.

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

Дополнительно