FileInfo.Open Method (FileMode, FileAccess)


The .NET API Reference documentation has a new home. Visit the .NET API Browser on to see the new experience.

Opens a file in the specified mode with read, write, or read/write access.

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

public FileStream Open(
	FileMode mode,
	FileAccess access


Type: System.IO.FileMode

A FileMode constant specifying the mode (for example, Open or Append) in which to open the file.

Type: System.IO.FileAccess

A FileAccess constant specifying whether to open the file with Read, Write, or ReadWrite file access.

Return Value

Type: System.IO.FileStream

A FileStream object opened in the specified mode and access, and unshared.

Exception Condition

The caller does not have the required permission.


The file is not found.


path is read-only or is a directory.


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


The file is already open.

The following example opens a file as read-only and reads from the file.

using System;
using System.IO;
using System.Text;

class Test 

    public static void Main() 
        string path = @"c:\MyTest.txt";
        FileInfo fi = new FileInfo(path);

        // Delete the file if it exists.
        if (!fi.Exists) 
            //Create the file.
            using (FileStream fs = fi.Create()) 
                Byte[] info = new UTF8Encoding(true).GetBytes("This is some text in the file.");
                //Add some information to the file.
                fs.Write(info, 0, info.Length);

        //Open the stream and read it back.
        using (FileStream fs = fi.Open(FileMode.Open, FileAccess.Read)) 
            byte[] b = new byte[1024];
            UTF8Encoding temp = new UTF8Encoding(true);
            while (fs.Read(b,0,b.Length) > 0) 

                //Try to write to the file.
            catch (Exception e) 
                Console.WriteLine("Writing was disallowed, as expected: {0}",
//This code produces output similar to the following; 
//results may vary based on the computer/file structure/etc.:
//This is some text in the file.
//Writing was disallowed, as expected: System.NotSupportedException: Stream does 
//not support writing.
//   at System.IO.__Error.WriteNotSupported()
//   at System.IO.FileStream.Write(Byte[] array, Int32 offset, Int32 count)
//   at Test.Main() in C:\Documents and Settings\My Computer\My Documents\
//Visual Studio 2005\Projects\finfo open2\finfo open2\Program.cs:line 39


for writing to and reading from files. Associated enumerations: FileIOPermissionAccess.Write and FileIOPermissionAccess.Read

Universal Windows Platform
Available since 10
.NET Framework
Available since 1.1
Available since 2.0
Windows Phone Silverlight
Available since 7.0
Return to top