MemoryStream Costruttori

Definizione

Inizializza una nuova istanza della classe MemoryStream.

Overload

MemoryStream()

Inizializza una nuova istanza della classe MemoryStream con una capacità espandibile inizializzata su zero.

MemoryStream(Byte[])

Inizializza una nuova istanza non ridimensionabile della classe MemoryStream in base alla matrice di byte specificata.

MemoryStream(Int32)

Inizializza una nuova istanza della classe MemoryStream con una capacità espandibile inizializzata secondo quanto specificato.

MemoryStream(Byte[], Boolean)

Inizializza una nuova istanza non ridimensionabile della classe MemoryStream in base alla matrice di byte specificata, con la proprietà CanWrite impostata secondo quanto specificato.

MemoryStream(Byte[], Int32, Int32)

Inizializza una nuova istanza non ridimensionabile della classe MemoryStream in base alla area specificata (indice) di una matrice di byte.

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

Inizializza una nuova istanza non ridimensionabile della classe MemoryStream in base all'area specificata di una matrice di byte, con la proprietà CanWrite impostata secondo quanto specificato.

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

Inizializza una nuova istanza della classe MemoryStream in base all'area specificata di una matrice di byte, con la proprietà CanWrite impostata secondo quanto specificato e la possibilità di chiamare il metodo GetBuffer() impostato nel modo specificato.

MemoryStream()

Inizializza una nuova istanza della classe MemoryStream con una capacità espandibile inizializzata su zero.

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

Commenti

Le CanReadproprietà , CanSeeke CanWrite sono tutte impostate su true.

La capacità del flusso corrente aumenta automaticamente quando si usa il SetLength metodo per impostare la lunghezza su un valore maggiore della capacità del flusso corrente.

Questo costruttore espone il flusso sottostante, che GetBuffer restituisce.

Vedi anche

Si applica a

MemoryStream(Byte[])

Inizializza una nuova istanza non ridimensionabile della classe MemoryStream in base alla matrice di byte specificata.

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

Parametri

buffer
Byte[]

Matrice di byte senza segno da cui creare il flusso corrente.

Eccezioni

buffer è null.

Commenti

Le CanReadproprietà , CanSeeke CanWrite sono tutte impostate su true. Capacity è impostato sulla lunghezza della matrice di byte specificata. Il nuovo flusso può essere scritto in , ma non è ridimensionabile.

La lunghezza del flusso non può essere impostata su un valore maggiore della lunghezza iniziale della matrice di byte specificata; Tuttavia, il flusso può essere troncato (vedere SetLength).

Questo costruttore non espone il flusso sottostante. GetBufferUnauthorizedAccessExceptiongenera .

Vedi anche

Si applica a

MemoryStream(Int32)

Inizializza una nuova istanza della classe MemoryStream con una capacità espandibile inizializzata secondo quanto specificato.

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

Parametri

capacity
Int32

Dimensione iniziale in byte della matrice interna.

Eccezioni

capacity è negativo.

Esempio

Questo esempio di codice fa parte di un esempio più ampio fornito per la MemoryStream classe .

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

Commenti

Le CanReadproprietà , CanSeeke CanWrite sono tutte impostate su true.

La capacità aumenta automaticamente quando si usa il SetLength metodo per impostare la lunghezza su un valore maggiore della capacità del flusso corrente. Ad eccezione di un MemoryStream oggetto costruito con un parametro byte[], le operazioni di scrittura alla fine di un'espansione MemoryStream dell'oggetto MemoryStream.

Questo costruttore espone il flusso sottostante restituito GetBuffer .

Vedi anche

Si applica a

MemoryStream(Byte[], Boolean)

Inizializza una nuova istanza non ridimensionabile della classe MemoryStream in base alla matrice di byte specificata, con la proprietà CanWrite impostata secondo quanto specificato.

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)

Parametri

buffer
Byte[]

Matrice di byte senza segno da cui creare il flusso.

writable
Boolean

Impostazione della proprietà CanWrite, che determina se il flusso supporta la scrittura.

Eccezioni

buffer è null.

Commenti

Le CanRead proprietà e CanSeek sono entrambe impostate su true. Capacity è impostato sulla lunghezza della matrice di byte specificata.

La lunghezza del flusso non può essere impostata su un valore maggiore della lunghezza iniziale della matrice di byte specificata; Tuttavia, il flusso può essere troncato (vedere SetLength).

Questo costruttore non espone il flusso sottostante. GetBufferUnauthorizedAccessExceptiongenera .

Vedi anche

Si applica a

MemoryStream(Byte[], Int32, Int32)

Inizializza una nuova istanza non ridimensionabile della classe MemoryStream in base alla area specificata (indice) di una matrice di byte.

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)

Parametri

buffer
Byte[]

Matrice di byte senza segno da cui creare il flusso.

index
Int32

Indice in buffer in corrispondenza del quale inizia il flusso.

count
Int32

Lunghezza del flusso in byte.

Eccezioni

buffer è null.

index o count è minore di zero.

La lunghezza del buffer meno index è minore di count.

Commenti

Le CanReadproprietà , CanSeeke CanWrite sono tutte impostate su true, ma la capacità non può essere modificata. Capacity è impostato su count.

La lunghezza del flusso non può essere impostata su un valore maggiore della lunghezza iniziale della matrice di byte specificata; Tuttavia, il flusso può essere troncato (vedere SetLength).

Questo costruttore non espone il flusso sottostante. GetBufferUnauthorizedAccessExceptiongenera . Tuttavia, è possibile scrivere nel flusso.

Vedi anche

Si applica a

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

Inizializza una nuova istanza non ridimensionabile della classe MemoryStream in base all'area specificata di una matrice di byte, con la proprietà CanWrite impostata secondo quanto specificato.

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)

Parametri

buffer
Byte[]

Matrice di byte senza segno da cui creare il flusso.

index
Int32

Indice in buffer in corrispondenza del quale inizia il flusso.

count
Int32

Lunghezza del flusso in byte.

writable
Boolean

Impostazione della proprietà CanWrite, che determina se il flusso supporta la scrittura.

Eccezioni

buffer è null.

index o count è un valore negativo.

La lunghezza del buffer meno index è minore di count.

Commenti

Le CanRead proprietà e CanSeek sono entrambe impostate su true. Capacity è impostato su count.

La lunghezza del flusso non può essere impostata su un valore maggiore della lunghezza iniziale della matrice di byte specificata; Tuttavia, il flusso può essere troncato (vedere SetLength).

Questo costruttore non espone il flusso sottostante. GetBufferUnauthorizedAccessExceptiongenera . Tuttavia, è possibile scrivere nel flusso se writable è true.

Vedi anche

Si applica a

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

Inizializza una nuova istanza della classe MemoryStream in base all'area specificata di una matrice di byte, con la proprietà CanWrite impostata secondo quanto specificato e la possibilità di chiamare il metodo GetBuffer() impostato nel modo specificato.

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)

Parametri

buffer
Byte[]

Matrice di byte senza segno da cui creare il flusso.

index
Int32

Indice in buffer in corrispondenza del quale inizia il flusso.

count
Int32

Lunghezza del flusso in byte.

writable
Boolean

Impostazione della proprietà CanWrite, che determina se il flusso supporta la scrittura.

publiclyVisible
Boolean

true per abilitare il metodo GetBuffer(), che restituisce la matrice di byte senza segno da cui è stato creato il flusso; in caso contrario, false.

Eccezioni

buffer è null.

index o count è negativo.

La lunghezza del buffer meno index è minore di count.

Commenti

Le CanRead proprietà e CanSeek sono entrambe impostate su true. Capacity è impostato su count.

La nuova istanza del flusso può essere scritta in , ma non è possibile modificare l'oggetto Capacity della matrice di byte sottostante. La lunghezza del flusso non può essere impostata su un valore maggiore della lunghezza iniziale della matrice di byte specificata; Tuttavia, il flusso può essere troncato (vedere SetLength).

Vedi anche

Si applica a