MemoryStream.GetBuffer Metodo

Definizione

Restituisce la matrice di byte senza segno da cui è stato creato questo flusso.

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

Restituisce

Byte[]

Matrice di byte da cui è stato creato il flusso o la matrice sottostante se una matrice di byte non è stata fornita al costruttore MemoryStream durante la costruzione dell'istanza corrente.

Eccezioni

L'istanza di MemoryStream non è stata creata con un buffer visibile pubblicamente.

Commenti

Si noti che il buffer contiene byte allocati che potrebbero essere inutilizzati. Ad esempio, se la stringa "test" viene scritta nell'oggetto MemoryStream , la lunghezza del buffer restituito da GetBuffer è 256, non 4, con 252 byte inutilizzati. Per ottenere solo i dati nel buffer, usare il ToArray metodo , ma ToArray crea una copia dei dati in memoria.

Il buffer può anche essere null.

Per creare un'istanza MemoryStream con un buffer visibile pubblicamente, usare MemoryStream, MemoryStream(Byte[], Int32, Int32, Boolean, Boolean)o MemoryStream(Int32). Se il flusso corrente è ridimensionabile, due chiamate a questo metodo non restituiscono la stessa matrice se la matrice di byte sottostante viene ridimensionata tra le chiamate. Per altre informazioni, vedere Capacity.

Nota

Questo metodo funziona quando il flusso di memoria viene chiuso.

Si applica a

Vedi anche