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.cs
Исходный код:
MemoryStream.cs
Исходный код:
MemoryStream.cs
Исходный код:
MemoryStream.cs
Исходный код:
MemoryStream.cs

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

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

Комментарии

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

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

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

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

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

MemoryStream(Byte[])

Исходный код:
MemoryStream.cs
Исходный код:
MemoryStream.cs
Исходный код:
MemoryStream.cs
Исходный код:
MemoryStream.cs
Исходный код:
MemoryStream.cs

Инициализирует новый неизменяемый экземпляр класса на основе указанного 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свойств CanSeekи CanWrite свойств задано значение true. Capacity имеет длину указанного массива байтов. Новый поток можно записать в, но не изменить размер.

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

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

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

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

MemoryStream(Int32)

Исходный код:
MemoryStream.cs
Исходный код:
MemoryStream.cs
Исходный код:
MemoryStream.cs
Исходный код:
MemoryStream.cs
Исходный код:
MemoryStream.cs

Инициализирует новый экземпляр 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 отрицательно.

–или–

В .NET 11 и более поздних версиях capacity больше Array.MaxLength.

Примеры

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

using(MemoryStream memStream = new MemoryStream(100))
Dim memStream As New MemoryStream(100)

Комментарии

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

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

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

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

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

MemoryStream(Byte[], Boolean)

Исходный код:
MemoryStream.cs
Исходный код:
MemoryStream.cs
Исходный код:
MemoryStream.cs
Исходный код:
MemoryStream.cs
Исходный код:
MemoryStream.cs

Инициализирует новый неизменяемый экземпляр 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 имеет длину указанного массива байтов.

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

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

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

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

MemoryStream(Byte[], Int32, Int32)

Исходный код:
MemoryStream.cs
Исходный код:
MemoryStream.cs
Исходный код:
MemoryStream.cs
Исходный код:
MemoryStream.cs
Исходный код:
MemoryStream.cs

Инициализирует новый неизменяемый экземпляр 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свойств CanSeekи CanWrite свойств задано trueзначение , но емкость не может быть изменена. Capacity задан как count.

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

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

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

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

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

Исходный код:
MemoryStream.cs
Исходный код:
MemoryStream.cs
Исходный код:
MemoryStream.cs
Исходный код:
MemoryStream.cs
Исходный код:
MemoryStream.cs

Инициализирует новый неизменяемый экземпляр 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.cs
Исходный код:
MemoryStream.cs
Исходный код:
MemoryStream.cs
Исходный код:
MemoryStream.cs
Исходный код:
MemoryStream.cs

Инициализирует новый экземпляр 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

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

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