TextReader.ReadLine Method

[ This article is for Windows Phone 8 developers. If you’re developing for Windows 10, see the latest documentation. ]

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

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


Public Overridable Function ReadLine As String
public virtual string ReadLine()

Return Value

Type: System..::.String
The next line from the input stream, or nullNothingnullptra null reference (Nothing in Visual Basic) if all characters have been read.


Exception Condition

An I/O error occurs.


There is insufficient memory to allocate a buffer for the returned string.


The TextReader is closed.


The number of characters in the next line is larger than MaxValue


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 and/or line feed. The returned value is nullNothingnullptra null reference (Nothing in Visual Basic) if the end of the input stream has been reached.

If the current method throws an OutOfMemoryException, the reader's position in the underlying Stream 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 TextReader. If the initial position within the stream is unknown or the stream does not support seeking, the underlying Stream 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 preallocated buffer.

Version Information

Windows Phone OS

Supported in: 8.1, 8.0, 7.1, 7.0


Windows Phone

See Also


TextReader Class

System.IO Namespace