File and Stream I/O 

The System.IO namespace contains types that allow synchronous and asynchronous reading and writing on data streams and files.

The following distinctions help clarify the differences between a file and a stream. A file is an ordered and named collection of a particular sequence of bytes having persistent storage. Therefore, with files, one thinks in terms of directory paths, disk storage, and file and directory names. In contrast, streams provide a way to write and read bytes to and from a backing store that can be one of several storage mediums. Just as there are several backing stores other than disks, there are several kinds of streams other than file streams. For example, there are network, memory, and tape streams.

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

In This Section

  • Basic File I/O
    Explains fundamental I/O concepts, introduces the I/O classes, and provides code examples of basic I/O operations.
  • Composing Streams
    Explains the different kinds of streams and their associated backing stores, providing code examples.
  • Isolated Storage
    Describes a data storage mechanism that provides isolation and safety by defining standardized ways of associating code with saved data.
  • Core Development Technologies
    Provides links to information about common programming tasks that apply to a range of .NET Framework applications.