MemoryStream Constructor (Byte[], Int32, Int32)

MemoryStream Constructor (Byte[], Int32, Int32)


Initializes a new non-resizable instance of the MemoryStream class based on the specified region (index) of a byte array.

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

public MemoryStream(
	byte[] buffer,
	int index,
	int count


Type: System.Byte[]

The array of unsigned bytes from which to create this stream.

Type: System.Int32

The index into buffer at which the stream begins.

Type: System.Int32

The length of the stream in bytes.

Exception Condition

buffer is null.


index or count is less than zero.


The buffer length minus index is less than count.

The CanRead, CanSeek, and CanWrite properties are all set to true, but the capacity cannot be changed. Capacity is set to count.

The length of the stream cannot be set to a value greater than the initial length of the specified byte array; however, the stream can be truncated (see SetLength).

This constructor does not expose the underlying stream. GetBuffer throws UnauthorizedAccessException. However, you can write to the stream.

Universal Windows Platform
Available since 4.5
.NET Framework
Available since 1.1
Portable Class Library
Supported in: portable .NET platforms
Available since 2.0
Windows Phone Silverlight
Available since 7.0
Windows Phone
Available since 8.1
Return to top
© 2015 Microsoft