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()
Возвращаемое значение
Массив байтов, из которого был создан данный поток, или базовый массив, если массив байтов не был предоставлен конструктору MemoryStream в процессе конструирования текущего экземпляра.
Исключения
Экземпляр MemoryStream
не был создан с помощью открытого буфера.
Комментарии
Обратите внимание, что буфер содержит выделенные байты, которые могут быть неиспользуемы. Например, если строка test записывается в MemoryStream объект , длина буфера, возвращаемого из GetBuffer , составляет 256, а не 4, при этом не используется 252 байта. Чтобы получить только данные в буфере, используйте ToArray метод ; ToArray однако создает копию данных в памяти.
Буфером также может быть null
.
Чтобы создать MemoryStream
экземпляр с общедоступным буфером, используйте MemoryStream, MemoryStream(Byte[], Int32, Int32, Boolean, Boolean)или MemoryStream(Int32). Если текущий поток можно изменить, два вызова этого метода не возвращают один и тот же массив, если размер базового массива байтов изменяется между вызовами. Дополнительные сведения см. в разделе Capacity.
Примечание
Этот метод работает при закрытии потока памяти.