MemoryStream.GetBuffer Метод

Определение

Возвращает массив неподписанных байтов, из которых был создан этот поток.

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()

Возвращаемое значение

Byte[]

Массив байтов, из которого был создан этот поток, или базовый массив, если массив байтов не был предоставлен MemoryStream конструктору во время построения текущего экземпляра.

Исключения

Экземпляр MemoryStream не был создан с общедоступным видимым буфером.

Комментарии

Обратите внимание, что буфер содержит выделенные байты, которые могут быть неиспользуются. Например, если строка "test" записывается в MemoryStream объект, длина буфера, возвращаемого из GetBuffer 256, а не 4, с 252 байтами, неиспользуемыми. Чтобы получить только данные в буфере, используйте ToArray метод, ToArray однако создайте копию данных в памяти.

Буфер также может быть null.

Создание экземпляра MemoryStream с общедоступным видимым буфером, использование MemoryStreamMemoryStream(Byte[], Int32, Int32, Boolean, Boolean)или MemoryStream(Int32). Если текущий поток доступен для изменения размера, два вызова этого метода не возвращают один и тот же массив, если базовый массив байтов изменяется между вызовами. Подробнее см. в статье Capacity.

Note

Этот метод работает при закрытии потока памяти.

Применяется к

См. также раздел