C# Language File and Stream I/O

30% OFF - 9th Anniversary discount on Entity Framework Extensions until December 15 with code: ZZZANNIVERSARY9


Manages files.


  • new System.IO.StreamWriter(string path)
  • new System.IO.StreamWriter(string path, bool append)
  • System.IO.StreamWriter.WriteLine(string text)
  • System.IO.StreamWriter.WriteAsync(string text)
  • System.IO.Stream.Close()
  • System.IO.File.ReadAllText(string path)
  • System.IO.File.ReadAllLines(string path)
  • System.IO.File.ReadLines(string path)
  • System.IO.File.WriteAllText(string path, string text)
  • System.IO.File.WriteAllLines(string path, IEnumerable<string> contents)
  • System.IO.File.Copy(string source, string dest)
  • System.IO.File.Create(string path)
  • System.IO.File.Delete(string path)
  • System.IO.File.Move(string source, string dest)
  • System.IO.Directory.GetFiles(string path)


pathThe location of the file.
appendIf the file exist, true will add data to the end of the file (append), false will overwrite the file.
textText to be written or stored.
contentsA collection of strings to be written.
sourceThe location of the file you want to use.
destThe location you want a file to go to.


  • Always make sure to close Stream objects. This can be done with a using block as shown above or by manually calling myStream.Close().
  • Make sure the current user has necessary permissions on the path you are trying to create the file.
  • Verbatim strings should be used when declaring a path string that includes backslashes, like so: @"C:\MyFolder\MyFile.txt"

Got any C# Language Question?