System.IO Namespaces

The System.IO namespaces contain types that support input and output, including the ability to read and write data to streams either synchronously or asynchronously, to compress data in streams, to create and use isolated stores, to map files to an application's logical address space, to store multiple data objects in a single container, to communicate using anonymous or named pipes, to implement custom logging, and to handle the flow of data to and from serial ports.


Namespace Description
System.IO The System.IO namespace contains types that allow reading and writing to files and data streams, and types that provide basic file and directory support.
System.IO.Compression The System.IO.Compression namespace contains classes that provide basic compression and decompression services for streams.
System.IO.IsolatedStorage The System.IO.IsolatedStorage namespace contains types that allow the creation and use of isolated stores. With these stores, you can read and write data that less trusted code cannot access and prevent the exposure of sensitive information that can be saved elsewhere on the file system. Data is stored in compartments that are isolated by the current user and by the assembly in which the code exists. Additionally, data can be isolated by domain. Roaming profiles can be used in conjunction with isolated storage so isolated stores will travel with the user's profile. The IsolatedStorageScope enumeration indicates different types of isolation. For more information about when to use isolated storage, see Isolated Storage.
System.IO.Log The System.IO.Log namespace defines an interface for logging to a record-oriented sequential I/O system.
System.IO.MemoryMappedFiles The System.IO.MemoryMappedFiles namespace provides classes for using a memory-mapped file, which maps the contents of a file to an application’s logical address space.
System.IO.Packaging Provides classes that support storage of multiple data objects in a single container.
System.IO.Pipes The System.IO.Pipes namespace contains types that provide a means for interprocess communication through anonymous and/or named pipes.
System.IO.Ports The System.IO.Ports namespace contains classes for controlling serial ports. The most important class, SerialPort, provides a framework for synchronous and event-driven I/O, access to pin and break states, and access to serial driver properties. It can be used to wrap Stream objects, allowing the serial port to be accessed by classes that use streams.