TextReader.ReadToEnd Method
Reads all characters from the current position to the end of the TextReader and returns them as one string.
[Visual Basic] Public Overridable Function ReadToEnd() As String [C#] public virtual string ReadToEnd(); [C++] public: virtual String* ReadToEnd(); [JScript] public function ReadToEnd() : String;
Return Value
A string containing all characters from the current position to the end of the TextReader.
Exceptions
| Exception Type | Condition |
|---|---|
| IOException | An I/O error occurs. |
| ObjectDisposedException | The TextReader is closed. |
| OutOfMemoryException | There is insufficient memory to allocate a buffer for the returned string. |
| ArgumentOutOfRangeException | The number of characters in the next line is larger than MaxValue |
Remarks
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 ReadToEnd 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.
The following table lists examples of other typical or related I/O tasks.
| To do this... | See the example in this topic... |
|---|---|
| Create a text file. | Writing Text to a File |
| Write to a text file. | Writing Text to a File |
| Read from a text file. | Reading Text from a File |
| Append text to a file. | Opening and Appending to a Log File |
| Get the size of a file. | FileInfo.Length |
| Get the attributes of a file. | File.GetAttributes |
| Set the attributes of a file. | File.SetAttributes |
| Determine if a file exists. | File.Exists |
| Read from a binary file. | Reading and Writing to a Newly Created Data File |
| Write to a binary file. | Reading and Writing to a Newly Created Data File |
Example
[Visual Basic, C#, C++] This code example is part of a larger example provided for the TextReader class.
[Visual Basic] Shared Sub ReadText(aTextReader As TextReader) Console.WriteLine("From {0} - {1}", _ aTextReader.GetType().Name, aTextReader.ReadToEnd()) End Sub [C#] static void ReadText(TextReader textReader) { Console.WriteLine("From {0} - {1}", textReader.GetType().Name, textReader.ReadToEnd()); } [C++] static void ReadText(TextReader* textReader) { Console::WriteLine(S"From {0} - {1}", textReader->GetType()->Name, textReader->ReadToEnd()); }
[JScript] No example is available for JScript. To view a Visual Basic, C#, or C++ example, click the Language Filter button
in the upper-left corner of the page.
Requirements
Platforms: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 family, .NET Compact Framework, Common Language Infrastructure (CLI) Standard
See Also
TextReader Class | TextReader Members | System.IO Namespace | Working with I/O | Reading Text from a File | Writing Text to a File