FileStream.Read-Methode
Liest einen Byteblock aus dem Stream und schreibt die Daten in einen angegebenen Puffer.
Namespace: System.IO
Assembly: mscorlib (in mscorlib.dll)
Syntax
'Declaration
Public Overrides Function Read ( _
<InAttribute> <OutAttribute> array As Byte(), _
offset As Integer, _
count As Integer _
) As Integer
'Usage
Dim instance As FileStream
Dim array As Byte()
Dim offset As Integer
Dim count As Integer
Dim returnValue As Integer
returnValue = instance.Read(array, offset, count)
public override int Read (
[InAttribute] [OutAttribute] byte[] array,
int offset,
int count
)
public:
virtual int Read (
[InAttribute] [OutAttribute] array<unsigned char>^ array,
int offset,
int count
) override
public int Read (
/** @attribute InAttribute() */ /** @attribute OutAttribute() */ byte[] array,
int offset,
int count
)
public override function Read (
array : byte[],
offset : int,
count : int
) : int
Parameter
- array
Enthält nach dem Beenden dieser Methode das angegebene Bytearray mit den Werten zwischen offsetund (offset + count - 1), die durch aus der aktuellen Quelle gelesene Bytes ersetzt wurden.
- offset
Der Byteoffset im array, ab dem gelesen werden soll.
- count
Die maximale Anzahl der zu lesenden Bytes.
Rückgabewert
Die Gesamtanzahl der in den Puffer gelesenen Bytes. Dies kann weniger als die Anzahl der angeforderten Bytes sein, wenn diese Anzahl an Bytes derzeit nicht verfügbar ist, oder null, wenn das Streamende erreicht ist.
Ausnahmen
Ausnahmetyp | Bedingung |
---|---|
array ist NULL (Nothing in Visual Basic). |
|
offset oder count ist negativ. |
|
Der Stream unterstützt keine Lesevorgänge. |
|
Ein E/A-Fehler tritt auf. |
|
offset und count bezeichnen einen ungültigen Bereich in array. |
|
Es wurden Methoden aufgerufen, nachdem der Stream geschlossen wurde. |
Hinweise
Diese Methode überschreibt Read.
Der offset-Parameter gibt den Offset des Bytes in array (den Pufferindex) an, ab dem gelesen werden soll, und der count-Parameter gibt die maximale Anzahl der aus diesem Stream zu lesenden Bytes an. Der zurückgegebene Wert ist die Anzahl der tatsächlich gelesenen Bytes bzw. 0, wenn das Streamende erreicht ist. Wenn der Lesevorgang erfolgreich ist, wird die aktuelle Position des Streams um die Anzahl der gelesenen Bytes erhöht. Wenn eine Ausnahme auftritt, wird die aktuelle Position des Streams nicht geändert.
Die Read-Methode gibt 0 (null) nur nach Erreichen des Streamendes zurück. Andernfalls liest Read vor der Rückgabe immer mindestens ein Byte aus dem Stream. Wenn bei einem Aufruf von Read keine Daten aus dem Stream verfügbar sind, blockiert die Methode, bis mindestens ein Byte mit Daten zurückgegeben werden kann. Eine Implementierung kann weniger Bytes als angefordert zurückgeben, auch wenn noch nicht das Ende des Streams erreicht ist.
Lesen Sie primitive Datentypen mithilfe von BinaryReader.
In der folgenden Tabelle sind Beispiele für andere typische oder verwandte E/A-Aufgaben aufgeführt.
Aufgabe |
Beispiel in diesem Thema |
---|---|
Erstellen einer Textdatei. |
|
In eine Textdatei schreiben. |
|
Aus einer Textdatei lesen. |
|
Text an eine Datei anfügen. |
|
Eine Datei umbenennen oder verschieben. |
|
Eine Datei kopieren. |
|
Die Größe einer Datei abrufen. |
|
Die Attribute einer Datei abrufen. |
|
Die Attribute einer Datei festlegen. |
|
Bestimmen, ob eine Datei vorhanden ist. |
|
Aus einer Binärdatei lesen. |
Gewusst wie: Lesen und Schreiben einer neu erstellten Datendatei |
In eine Binärdatei schreiben. |
Gewusst wie: Lesen und Schreiben einer neu erstellten Datendatei |
Erstellen eines Verzeichnisses. |
Directory.CreateDirectory |
Beispiel
Das folgende Beispiel veranschaulicht das Lesen einer angegebenen Anzahl von Bytes aus einer vorhandenen Datei.
Imports System
Imports System.IO
Class FSRead
Public Shared Sub Main()
'Create a file stream from an existing file.
Dim fi As New FileInfo("c:\csc.txt")
Dim fs As FileStream = fi.OpenRead()
'Read 100 bytes into an array from the specified file.
Dim nBytes As Integer = 100
Dim ByteArray(nBytes) As Byte
Dim nBytesRead As Integer = fs.Read(ByteArray, 0, nBytes)
Console.WriteLine("{0} bytes have been read from the specified file.", nBytesRead.ToString())
End Sub 'Main
End Class 'FSRead
using System;
using System.IO;
class FSRead
{
public static void Main()
{
//Create a file stream from an existing file.
FileInfo fi=new FileInfo("c:\\csc.txt");
FileStream fs=fi.OpenRead();
//Read 100 bytes into an array from the specified file.
int nBytes=100;
byte[] ByteArray=new byte[nBytes];
int nBytesRead=fs.Read(ByteArray, 0, nBytes);
Console.WriteLine("{0} bytes have been read from the specified file.", nBytesRead.ToString());
}
}
using namespace System;
using namespace System::IO;
int main()
{
//Create a file stream from an existing file.
FileInfo^ fi = gcnew FileInfo( "c:\\csc.txt" );
FileStream^ fs = fi->OpenRead();
//Read 100 bytes into an array from the specified file.
int nBytes = 100;
array<Byte>^ByteArray = gcnew array<Byte>(nBytes);
int nBytesRead = fs->Read( ByteArray, 0, nBytes );
Console::WriteLine( "{0} bytes have been read from the specified file.", nBytesRead );
}
import System.*;
import System.IO.*;
class FSRead
{
public static void main(String[] args)
{
//Create a file stream from an existing file.
FileInfo fi = new FileInfo("c:\\csc.txt");
FileStream fs = fi.OpenRead();
//Read 100 bytes into an array from the specified file.
int nBytes = 100;
ubyte byteArray[] = new ubyte[nBytes];
int nBytesRead = fs.Read(byteArray, 0, nBytes);
Console.WriteLine("{0} bytes have been read from the specified file.",
((Int32)nBytesRead).ToString());
} //main
} //FSRead
Plattformen
Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile für Pocket PC, Windows Mobile für Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.
Versionsinformationen
.NET Framework
Unterstützt in: 2.0, 1.1, 1.0
.NET Compact Framework
Unterstützt in: 2.0, 1.0
Siehe auch
Referenz
FileStream-Klasse
FileStream-Member
System.IO-Namespace
Weitere Ressourcen
Datei- und Stream-E/A
Gewusst wie: Lesen aus einer Textdatei
Gewusst wie: Schreiben von Text in eine Datei