Export (0) Print
Expand All

MemoryStream Constructor (Byte[], Int32, Int32, Boolean)

Initializes a new non-resizable instance of the MemoryStream class based on the specified region of a byte array, with the CanWrite property set as specified.

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

public MemoryStream(
	byte[] buffer,
	int index,
	int count,
	bool writable
)

Parameters

buffer
Type: System.Byte[]
The array of unsigned bytes from which to create this stream.
index
Type: System.Int32
The index in buffer at which the stream begins.
count
Type: System.Int32
The length of the stream in bytes.
writable
Type: System.Boolean
The setting of the CanWrite property, which determines whether the stream supports writing.

ExceptionCondition
ArgumentNullException

buffer is null.

ArgumentOutOfRangeException

index or count are negative.

ArgumentException

The buffer length minus index is less than count.

The CanRead and CanSeek properties are both set to true. 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 if writable is true.

Platform Notes

Silverlight for Windows Phone Silverlight for Windows Phone

 System.ArgumentNullException is thrown when trying to retrieve a MemoryStream object with a size of zero bytes from a resource file. On Windows, no exception is thrown when the length is equal to zero.

Silverlight

Supported in: 5, 4, 3

Silverlight for Windows Phone

Supported in: Windows Phone OS 7.1, Windows Phone OS 7.0

XNA Framework

Supported in: Xbox 360, Windows Phone OS 7.0

For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.

Community Additions

Show:
© 2014 Microsoft