StreamReader.ReadLine Method

Reads a line of characters from the current stream and returns the data as a string.

Namespace: System.IO
Assembly: mscorlib (in mscorlib.dll)

Syntax

public override string ReadLine ()

Return Value

The next line from the input stream, or a null reference if the end of the input stream is reached.

Remarks

A line is defined as a sequence of characters followed by a line feed ("\n"), a carriage return ("\r") or a carriage return immediately followed by a line feed ("\r\n"). The string that is returned does not contain the terminating carriage return or line feed. The returned value is a null reference if the end of the input stream is reached.

This method overrides ReadLine.

If the current method throws an OutOfMemoryException, the reader's position in the underlying Stream object is advanced by the number of characters the method was able to read, but the characters already read into the internal ReadLine buffer are discarded. Since the position of the reader in the stream cannot be changed, the characters already read are unrecoverable, and can be accessed only by reinitializing the StreamReader object. If the initial position within the stream is unknown or the stream does not support seeking, the underlying Stream object also needs to be reinitialized.

To avoid such a situation and produce robust code you should use the Read method and store the read characters in a pre-allocated buffer.

Version Information

Available in the .NET Micro Framework versions 3.0, 4.0, and 4.1.

See Also

Reference

StreamReader Class
StreamReader Members
System.IO Namespace