StreamReader Constructor (String)

StreamReader Constructor (String)

Initializes a new instance of the StreamReader class for the specified file name.

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

public StreamReader(
	string path


Type: System.String
The complete file path to be read.


path is an empty string ("").


path is null.


The file cannot be found.


The specified path is invalid, such as being on an unmapped drive.


path includes an incorrect or invalid syntax for file name, directory name, or volume label.

The complete file path is specified by the path parameter. This constructor initializes the encoding to UTF8Encoding and the buffer size to 1024 bytes.

The path parameter can be a file name, including a file on a Universal Naming Convention (UNC) share.

The path parameter is not required to be a file stored on disk; it can be any part of a system that supports access using streams.

Caution noteCaution

When you compile a set of characters with a particular cultural setting and retrieve those same characters with a different cultural setting, the characters might not be interpretable, and could cause an exception to be thrown.

For a list of common I/O tasks, see Common I/O Tasks.

The following code example demonstrates this StreamReader constructor.

using System;
using System.IO;

class Test 
    public static void Main() 
        string path = @"c:\temp\MyTest.txt";

            if (File.Exists(path)) 

            using (StreamWriter sw = new StreamWriter(path)) 
                sw.WriteLine("is some text");
                sw.WriteLine("to test");

            using (StreamReader sr = new StreamReader(path)) 
                while (sr.Peek() >= 0) 
        catch (Exception e) 
            Console.WriteLine("The process failed: {0}", e.ToString());

.NET Framework

Supported in: 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Community Additions

© 2015 Microsoft