MemoryStream.GetBuffer Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Returns the array of unsigned bytes from which this stream was created.
public:
virtual cli::array <System::Byte> ^ GetBuffer();
public virtual byte[] GetBuffer ();
abstract member GetBuffer : unit -> byte[]
override this.GetBuffer : unit -> byte[]
Public Overridable Function GetBuffer () As Byte()
Returns
The byte array from which this stream was created, or the underlying array if a byte array was not provided to the MemoryStream constructor during construction of the current instance.
Exceptions
The MemoryStream
instance was not created with a publicly visible buffer.
Remarks
Note that the buffer contains allocated bytes which might be unused. For example, if the string "test" is written into the MemoryStream object, the length of the buffer returned from GetBuffer is 256, not 4, with 252 bytes unused. To obtain only the data in the buffer, use the ToArray method; however, ToArray creates a copy of the data in memory.
The buffer can also be null
.
To create a MemoryStream
instance with a publicly visible buffer, use MemoryStream, MemoryStream(Byte[], Int32, Int32, Boolean, Boolean), or MemoryStream(Int32). If the current stream is resizable, two calls to this method do not return the same array if the underlying byte array is resized between calls. For additional information, see Capacity.
Note
This method works when the memory stream is closed.