This documentation is archived and is not being maintained.

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.


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();
}



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();
}


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.

NoteNote

Visual Basic users may choose to use the methods and properties provided by the FileSystem class for file I/O.

Show: