MemoryStream.Read Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
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
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
- E/S de fichier et de flux
- Guide pratique pour lire du texte à partir d’un fichier
- Guide pratique pour écrire du texte dans un fichier