MemoryStream.Read Méthode

Définition

Surcharges

Nom Description
Read(Span<Byte>)

Lit une séquence d’octets à partir du flux de mémoire actuel et avance la position dans le flux de mémoire par le nombre d’octets lus.

Read(Byte[], Int32, Int32)

Lit un bloc d’octets du flux actuel et écrit les données dans une mémoire tampon.

Read(Span<Byte>)

Lit une séquence d’octets à partir du flux de mémoire actuel et avance la position dans le flux de mémoire par le nombre d’octets lus.

public:
 override int Read(Span<System::Byte> destination);
public override int Read(Span<byte> destination);
override this.Read : Span<byte> -> int
Public Overrides Function Read (destination As Span(Of Byte)) As Integer

Paramètres

destinationbuffer
Span<Byte>

Une région de mémoire. Lorsque cette méthode est retournée, le contenu de cette étendue est remplacé par les octets lus à partir de la source de flux de mémoire actuelle.

Retours

Nombre total d’octets lus dans la mémoire tampon. Cela peut être inférieur au nombre d’octets alloués dans la mémoire tampon si ce nombre d’octets ne sont pas actuellement disponibles, ou zéro (0) si la fin du flux de mémoire a été atteinte.

S’applique à

Read(Byte[], Int32, Int32)

Lit un bloc d’octets du flux actuel et écrit les données dans une mémoire tampon.

public:
 override int Read(cli::array <System::Byte> ^ buffer, int offset, int count);
public override int Read(byte[] buffer, int offset, int count);
override this.Read : byte[] * int * int -> int
Public Overrides Function Read (buffer As Byte(), offset As Integer, count As Integer) As Integer

Paramètres

buffer
Byte[]

Lorsque cette méthode est retournée, contient le tableau d’octets spécifié avec les valeurs comprises entre offset et (offset + count - 1) remplacées par les caractères lus à partir du flux actuel.

offset
Int32

Décalage d’octet de base zéro dans buffer lequel commencer le stockage des données à partir du flux actuel.

count
Int32

Nombre maximal d’octets à lire.

Retours

Nombre total d’octets écrits dans la mémoire tampon. Cela peut être inférieur au nombre d’octets demandé si ce nombre d’octets n’est pas actuellement disponible, ou zéro si la fin du flux est atteinte avant la lecture d’octets.

Exceptions

buffer a la valeur null.

offset ou count est négatif.

offset soustraction de la longueur de la mémoire tampon est inférieure countà .

L’instance de flux actuelle est fermée.

Exemples

Cet exemple de code fait partie d’un exemple plus grand fourni pour la MemoryStream classe.

// Read the first 20 bytes from the stream.
byteArray = new byte[memStream.Length];
count = memStream.Read(byteArray, 0, 20);
' Read the first 20 bytes from the stream.
byteArray = _
    New Byte(CType(memStream.Length, Integer)){}
count = memStream.Read(byteArray, 0, 20)

Remarques

Cette méthode se substitue à Read.

Le offset paramètre donne le décalage du premier octet dans buffer lequel les données du flux actuel sont écrites. Le count paramètre donne le nombre maximal d’octets à lire à partir du flux actuel. La valeur retournée est le nombre réel d’octets lus, ou zéro si la fin du flux est atteinte.

Si l’opération de lecture réussit, la position actuelle dans le flux avance par le nombre d’octets lus. Si une exception se produit, la position actuelle dans le flux reste inchangée.

La Read méthode retourne zéro uniquement si la fin du flux est atteinte. Dans tous les autres cas, Read lit toujours au moins un octet du flux avant de retourner. Par définition, si aucune donnée n’est disponible à partir du flux lors d’un appel, Readla Read méthode retourne zéro (la fin du flux est atteinte automatiquement). Une implémentation est libre de retourner moins d’octets que demandés même si la fin du flux n’a pas été atteinte.

Permet BinaryReader de lire les types de données primitifs.

Avertissement

Si le tableau d’octets spécifié dans le buffer paramètre est la mémoire tampon sous-jacente retournée par la GetBuffer méthode, le contenu du tableau est remplacé et aucune exception n’est levée.

Voir aussi

S’applique à