DeflateStream Constructor (Stream^, CompressionMode)


Initializes a new instance of the DeflateStream class by using the specified stream and compression mode.

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

	Stream^ stream,
	CompressionMode mode


Type: System.IO::Stream^

The stream to compress or decompress.

Type: System.IO.Compression::CompressionMode

One of the enumeration values that indicates whether to compress or decompress the stream.

Exception Condition

stream is null.


mode is not a valid CompressionMode value.


CompressionMode is Compress and CanWrite is false.


CompressionMode is Decompress and CanRead is false.

By default, DeflateStream owns the underlying stream, so closing the stream also closes the underlying stream. Note that the state of the underlying stream can affect the usability of the stream. Also, no explicit checks are performed, so no additional exceptions are thrown when the new instance is created.

If an instance of the DeflateStream class is created with the mode parameter equal to Compress, header information is inserted immediately. If no further action occurs, the stream appears as a valid, empty, compressed file.

Using the DeflateStream class to compress a file larger than 4 GB raises an exception.

By default, the compression level is set to Optimal when the compression mode is Compress.

The following example shows how to use the DeflateStream class to compress and decompress a file.

No code example is currently available or this language may not be supported.

Universal Windows Platform
Available since 8
.NET Framework
Available since 2.0
Portable Class Library
Supported in: portable .NET platforms
Windows Phone
Available since 8.1
Return to top