How to: Read Text from a File
The following code examples show how to read text from a text file. The second example notifies you when the end of the file is detected. This functionality can also be achieved by using the ReadAllLines or ReadAllText methods.
Example
Imports System
Imports System.IO
Class Test
Public Shared Sub Main()
Try
' Create an instance of StreamReader to read from a file.
' The using statement also closes the StreamReader.
Using sr As New StreamReader("TestFile.txt")
Dim line As String
' Read and display lines from the file until the end of
' the file is reached.
Do
line = sr.ReadLine()
If Not (line Is Nothing) Then
Console.WriteLine(line)
End If
Loop Until line Is Nothing
End Using
Catch e As Exception
' Let the user know what went wrong.
Console.WriteLine("The file could not be read:")
Console.WriteLine(e.Message)
End Try
End Sub
End Class
using System;
using System.IO;
class Test
{
public static void Main()
{
try
{
// Create an instance of StreamReader to read from a file.
// The using statement also closes the StreamReader.
using (StreamReader sr = new StreamReader("TestFile.txt"))
{
String line;
// Read and display lines from the file until the end of
// the file is reached.
while ((line = sr.ReadLine()) != null)
{
Console.WriteLine(line);
}
}
}
catch (Exception e)
{
// Let the user know what went wrong.
Console.WriteLine("The file could not be read:");
Console.WriteLine(e.Message);
}
}
}
using namespace System;
using namespace System::IO;
ref class Test
{
public:
static void Main()
{
try
{
// Create an instance of StreamReader to read from a file.
// The using statement also closes the StreamReader.
StreamReader^ sr = gcnew StreamReader("TestFile.txt");
String^ line;
// Read and display lines from the file until the end of
// the file is reached.
while ((line = sr->ReadLine()) != nullptr)
{
Console::WriteLine(line);
}
sr->Close();
}
catch (Exception^ e)
{
// Let the user know what went wrong.
Console::WriteLine("The file could not be read:");
Console::WriteLine(e->Message);
}
}
};
int main()
{
Test::Main();
}
Imports System
Imports System.IO
Public Class TextFromFile
Private Const FILE_NAME As String = "MyFile.txt"
Public Shared Sub Main()
If Not File.Exists(FILE_NAME) Then
Console.WriteLine("{0} does not exist.", FILE_NAME)
Return
End If
Using sr As StreamReader = File.OpenText(FILE_NAME)
Dim input As String
Do
input = sr.ReadLine()
If Not (input Is Nothing) Then
Console.WriteLine(input)
End If
Loop Until input Is Nothing
Console.WriteLine ("The end of the stream has been reached.")
End Using
End Sub
End Class
using System;
using System.IO;
public class TextFromFile
{
private const string FILE_NAME = "MyFile.txt";
public static void Main()
{
if (!File.Exists(FILE_NAME))
{
Console.WriteLine("{0} does not exist.", FILE_NAME);
return;
}
using (StreamReader sr = File.OpenText(FILE_NAME))
{
String input;
while ((input = sr.ReadLine()) != null)
{
Console.WriteLine(input);
}
Console.WriteLine ("The end of the stream has been reached.");
}
}
}
using namespace System;
using namespace System::IO;
public ref class TextFromFile
{
private:
static String^ FILE_NAME = "MyFile.txt";
public:
static void Main()
{
if (!File::Exists(FILE_NAME))
{
Console::WriteLine("{0} does not exist.", FILE_NAME);
return;
}
StreamReader^ sr = File::OpenText(FILE_NAME);
String^ input;
while ((input = sr->ReadLine()) != nullptr)
{
Console::WriteLine(input);
}
Console::WriteLine ("The end of the stream has been reached.");
sr->Close();
}
};
int main()
{
TextFromFile::Main();
}
Robust Programming
This code creates a StreamReader that points to MyFile.txt through a call to File.OpenText. StreamReader.ReadLine returns each line as a string. When there are no more characters to read, a message is displayed to that effect, and the stream is closed.
Note
Visual Basic users may choose to use the methods and properties provided by the FileSystem class for file I/O.
See Also
Tasks
How to: Create a Directory Listing
How to: Read and Write to a Newly Created Data File
How to: Open and Append to a Log File
How to: Read Characters from a String
How to: Write Characters to a String