MemoryStream.Read Methode
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Overloads
| Name | Description |
|---|---|
| Read(Span<Byte>) |
Hiermee leest u een reeks bytes uit de huidige geheugenstroom en wordt de positie binnen de geheugenstroom verplaatst door het aantal gelezen bytes. |
| Read(Byte[], Int32, Int32) |
Leest een blok bytes uit de huidige stroom en schrijft de gegevens naar een buffer. |
Read(Span<Byte>)
Hiermee leest u een reeks bytes uit de huidige geheugenstroom en wordt de positie binnen de geheugenstroom verplaatst door het aantal gelezen bytes.
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
Parameters
Een geheugengebied. Wanneer deze methode wordt geretourneerd, wordt de inhoud van deze periode vervangen door de bytes die zijn gelezen uit de huidige bron van de geheugenstroom.
Retouren
Het totale aantal bytes dat in de buffer is gelezen. Dit kan kleiner zijn dan het aantal bytes dat is toegewezen in de buffer als dat aantal bytes momenteel niet beschikbaar is, of nul (0) als het einde van de geheugenstroom is bereikt.
Van toepassing op
Read(Byte[], Int32, Int32)
Leest een blok bytes uit de huidige stroom en schrijft de gegevens naar een buffer.
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
Parameters
- buffer
- Byte[]
Wanneer deze methode wordt geretourneerd, bevat de opgegeven bytematrix met de waarden tussen offset en (offset + count - 1) vervangen door de tekens die uit de huidige stroom worden gelezen.
- offset
- Int32
De byte-offset buffer op basis van nul waarin gegevens uit de huidige stroom moeten worden opgeslagen.
- count
- Int32
Het maximum aantal bytes dat moet worden gelezen.
Retouren
Het totale aantal bytes dat in de buffer is geschreven. Dit kan kleiner zijn dan het aantal aangevraagde bytes als dat aantal bytes momenteel niet beschikbaar is of nul als het einde van de stream wordt bereikt voordat bytes worden gelezen.
Uitzonderingen
buffer is null.
offset of count is negatief.
offset Afgetrokken van de bufferlengte is kleiner dan count.
Het huidige stroomexemplaren is gesloten.
Voorbeelden
Dit codevoorbeeld maakt deel uit van een groter voorbeeld voor de MemoryStream klasse.
// 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)
Opmerkingen
Deze methode overschrijft Read.
De offset parameter geeft de offset van de eerste byte waarin buffer gegevens uit de huidige stroom worden geschreven. De count parameter geeft het maximum aantal bytes dat moet worden gelezen uit de huidige stroom. De geretourneerde waarde is het werkelijke aantal bytes dat wordt gelezen of nul als het einde van de stream is bereikt.
Als de leesbewerking is geslaagd, wordt de huidige positie binnen de stroom vooruit gestegen door het aantal gelezen bytes. Als er een uitzondering optreedt, blijft de huidige positie binnen de stream ongewijzigd.
De Read methode retourneert alleen nul als het einde van de stream is bereikt. In alle andere gevallen Read leest u altijd ten minste één byte uit de stream voordat u terugkeert. Als er geen gegevens uit de stream beschikbaar zijn bij een aanroep naar Read, retourneert de Read methode nul (het einde van de stream wordt automatisch bereikt). Een implementatie is gratis om minder bytes te retourneren dan aangevraagd, zelfs als het einde van de stream niet is bereikt.
Gebruiken BinaryReader voor het lezen van primitieve gegevenstypen.
Caution
Als de bytematrix die is opgegeven in de buffer parameter de onderliggende buffer is die door de GetBuffer methode wordt geretourneerd, wordt de matrixinhoud overschreven en wordt er geen uitzondering gegenereerd.
Zie ook
- Bestands- en Stream-I/O
- Procedure: Tekst uit een bestand lezen
- Procedure: Tekst naar een bestand schrijven