MemoryStream Конструкторы

Определение

Инициализирует новый экземпляр класса MemoryStream.

Перегрузки

MemoryStream()

Инициализирует новый экземпляр класса MemoryStream расширяемой производительностью, инициализированной нулевым значением.

MemoryStream(Byte[])

Инициализирует новый неизменяемый экземпляр класса MemoryStream на основе указанного массива байтов.

MemoryStream(Int32)

Инициализирует новый экземпляр класса MemoryStream расширяемой емкостью, инициализированной с указанным значением.

MemoryStream(Byte[], Boolean)

Инициализирует новый неизменяемый экземпляр класса MemoryStream на основе указанного массива байтов с помощью указанного значения свойства CanWrite.

MemoryStream(Byte[], Int32, Int32)

Инициализирует новый неизменяемый экземпляр класса MemoryStream на основе указанной области (индекса) массива байтов.

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

Инициализирует новый неизменяемый экземпляр класса MemoryStream на основе указанной области массива байтов с помощью указанного значения свойства CanWrite.

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

Инициализирует новый экземпляр класса MemoryStream на основе указанной области массива байтов с помощью указанного значения свойства CanWrite и возможности вызова GetBuffer() с указанным значением.

MemoryStream()

Инициализирует новый экземпляр класса MemoryStream расширяемой производительностью, инициализированной нулевым значением.

public:
 MemoryStream();
public MemoryStream ();
Public Sub New ()

Комментарии

Для CanReadсвойств и CanWrite свойств задано значение true. CanSeek

Емкость текущего потока автоматически увеличивается при использовании SetLength метода для задания длины значения, превышающего емкость текущего потока.

Этот конструктор предоставляет базовый поток, который GetBuffer возвращается.

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

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

MemoryStream(Byte[])

Инициализирует новый неизменяемый экземпляр класса MemoryStream на основе указанного массива байтов.

public:
 MemoryStream(cli::array <System::Byte> ^ buffer);
public MemoryStream (byte[] buffer);
new System.IO.MemoryStream : byte[] -> System.IO.MemoryStream
Public Sub New (buffer As Byte())

Параметры

buffer
Byte[]

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

Исключения

buffer имеет значение null.

Комментарии

Для CanReadсвойств и CanWrite свойств задано значение true. CanSeek Capacity is set to the length of the specified byte array. Новый поток можно записать в, но его размер не допускается.

Длина потока не может быть задана как значение, превышающее начальную длину указанного массива байтов; однако поток может быть усечен (см. раздел SetLength).

Этот конструктор не предоставляет базовый поток. GetBuffer бросает UnauthorizedAccessException.

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

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

MemoryStream(Int32)

Инициализирует новый экземпляр класса MemoryStream расширяемой емкостью, инициализированной с указанным значением.

public:
 MemoryStream(int capacity);
public MemoryStream (int capacity);
new System.IO.MemoryStream : int -> System.IO.MemoryStream
Public Sub New (capacity As Integer)

Параметры

capacity
Int32

Исходный размер внутреннего массива в байтах.

Исключения

capacity является отрицательным значением.

Примеры

Этот пример входит в состав более крупного примера использования класса MemoryStream.

MemoryStream^ memStream = gcnew MemoryStream( 100 );
using(MemoryStream memStream = new MemoryStream(100))
Dim memStream As New MemoryStream(100)

Комментарии

Для CanReadсвойств и CanWrite свойств задано значение true. CanSeek

Емкость автоматически увеличивается при использовании SetLength метода для задания длины значения, превышающего емкость текущего потока. MemoryStream За исключением сконструированного с параметром byte[], операции записи в конце MemoryStream расширения MemoryStream.

Этот конструктор предоставляет базовый поток, который GetBuffer возвращается.

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

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

MemoryStream(Byte[], Boolean)

Инициализирует новый неизменяемый экземпляр класса MemoryStream на основе указанного массива байтов с помощью указанного значения свойства CanWrite.

public:
 MemoryStream(cli::array <System::Byte> ^ buffer, bool writable);
public MemoryStream (byte[] buffer, bool writable);
new System.IO.MemoryStream : byte[] * bool -> System.IO.MemoryStream
Public Sub New (buffer As Byte(), writable As Boolean)

Параметры

buffer
Byte[]

Массив байтов без знака, из которого создается данный поток.

writable
Boolean

Параметр свойства CanWrite, который определяет возможность поддержки потоком записи.

Исключения

buffer имеет значение null.

Комментарии

Для CanRead обоих CanSeek свойств задано значение true. Capacity is set to the length of the specified byte array.

Длина потока не может быть задана как значение, превышающее начальную длину указанного массива байтов; однако поток может быть усечен (см. раздел SetLength).

Этот конструктор не предоставляет базовый поток. GetBuffer бросает UnauthorizedAccessException.

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

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

MemoryStream(Byte[], Int32, Int32)

Инициализирует новый неизменяемый экземпляр класса MemoryStream на основе указанной области (индекса) массива байтов.

public:
 MemoryStream(cli::array <System::Byte> ^ buffer, int index, int count);
public MemoryStream (byte[] buffer, int index, int count);
new System.IO.MemoryStream : byte[] * int * int -> System.IO.MemoryStream
Public Sub New (buffer As Byte(), index As Integer, count As Integer)

Параметры

buffer
Byte[]

Массив байтов без знака, из которого создается данный поток.

index
Int32

Индекс в buffer, с которого начинается поток.

count
Int32

Длина потока в байтах.

Исключения

buffer имеет значение null.

Значение параметра index или count меньше нуля.

Длина буфера минус index меньше count.

Комментарии

Свойства CanReadи CanWrite свойства имеют значение true, но емкость не может CanSeekбыть изменена. Параметру Capacity задается значение count.

Длина потока не может быть задана как значение, превышающее начальную длину указанного массива байтов; однако поток может быть усечен (см. раздел SetLength).

Этот конструктор не предоставляет базовый поток. GetBuffer бросает UnauthorizedAccessException. Однако вы можете записать данные в поток.

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

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

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

Инициализирует новый неизменяемый экземпляр класса MemoryStream на основе указанной области массива байтов с помощью указанного значения свойства CanWrite.

public:
 MemoryStream(cli::array <System::Byte> ^ buffer, int index, int count, bool writable);
public MemoryStream (byte[] buffer, int index, int count, bool writable);
new System.IO.MemoryStream : byte[] * int * int * bool -> System.IO.MemoryStream
Public Sub New (buffer As Byte(), index As Integer, count As Integer, writable As Boolean)

Параметры

buffer
Byte[]

Массив байтов без знака, из которого создается данный поток.

index
Int32

Индекс в buffer, с которого начинается поток.

count
Int32

Длина потока в байтах.

writable
Boolean

Параметр свойства CanWrite, который определяет возможность поддержки потоком записи.

Исключения

buffer имеет значение null.

Параметр index или count имеет отрицательное значение.

Длина буфера минус index меньше count.

Комментарии

Для CanRead обоих CanSeek свойств задано значение true. Параметру Capacity задается значение count.

Длина потока не может быть задана как значение, превышающее начальную длину указанного массива байтов; однако поток может быть усечен (см. раздел SetLength).

Этот конструктор не предоставляет базовый поток. GetBuffer бросает UnauthorizedAccessException. Тем не менее, вы можете записать в поток, если writable есть true.

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

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

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

Инициализирует новый экземпляр класса MemoryStream на основе указанной области массива байтов с помощью указанного значения свойства CanWrite и возможности вызова GetBuffer() с указанным значением.

public:
 MemoryStream(cli::array <System::Byte> ^ buffer, int index, int count, bool writable, bool publiclyVisible);
public MemoryStream (byte[] buffer, int index, int count, bool writable, bool publiclyVisible);
new System.IO.MemoryStream : byte[] * int * int * bool * bool -> System.IO.MemoryStream
Public Sub New (buffer As Byte(), index As Integer, count As Integer, writable As Boolean, publiclyVisible As Boolean)

Параметры

buffer
Byte[]

Массив байтов без знака, из которого создается данный поток.

index
Int32

Индекс в buffer, с которого начинается поток.

count
Int32

Длина потока в байтах.

writable
Boolean

Параметр свойства CanWrite, который определяет возможность поддержки потоком записи.

publiclyVisible
Boolean

Значение true, чтобы разрешить метод GetBuffer(), возвращающий массив байтов без знака, из которого создан поток; в противном случае — значение false.

Исключения

buffer имеет значение null.

index или count является отрицательным значением.

Длина буфера минус index меньше count.

Комментарии

Для CanRead обоих CanSeek свойств задано значение true. Параметру Capacity задается значение count.

Новый экземпляр потока можно записать в, но Capacity базовый массив байтов нельзя изменить. Длина потока не может быть задана как значение, превышающее начальную длину указанного массива байтов; однако поток может быть усечен (см. раздел SetLength).

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

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