FileStream Klasse

Definition

Stellt einen Stream für eine Datei bereit, wobei synchrone und asynchrone Lese- und Schreibvorgänge unterstützt werden.

public ref class FileStream : System::IO::Stream
public class FileStream : System.IO.Stream
[System.Runtime.InteropServices.ComVisible(true)]
public class FileStream : System.IO.Stream
type FileStream = class
    inherit Stream
[<System.Runtime.InteropServices.ComVisible(true)>]
type FileStream = class
    inherit Stream
Public Class FileStream
Inherits Stream
Vererbung
FileStream
Vererbung
Abgeleitet
Attribute

Beispiele

Im folgenden Beispiel werden einige der FileStream Konstruktoren veranschaulicht.

using namespace System;
using namespace System::IO;
using namespace System::Text;

void AddText( FileStream^ fs, String^ value )
{
   array<Byte>^info = (gcnew UTF8Encoding( true ))->GetBytes( value );
   fs->Write( info, 0, info->Length );
}

int main()
{
   String^ path = "c:\\temp\\MyTest.txt";
   
   // Delete the file if it exists.
   if ( File::Exists( path ) )
   {
      File::Delete( path );
   }

   //Create the file.
   {
      FileStream^ fs = File::Create( path );
      try
      {
         AddText( fs, "This is some text" );
         AddText( fs, "This is some more text," );
         AddText( fs, "\r\nand this is on a new line" );
         AddText( fs, "\r\n\r\nThe following is a subset of characters:\r\n" );
         for ( int i = 1; i < 120; i++ )
         {
            AddText( fs, Convert::ToChar( i ).ToString() );
            
            //Split the output at every 10th character.
            if ( Math::IEEERemainder( Convert::ToDouble( i ), 10 ) == 0 )
            {
               AddText( fs, "\r\n" );
            }
         }
      }
      finally
      {
         if ( fs )
            delete (IDisposable^)fs;
      }
   }
   
   //Open the stream and read it back.
   {
      FileStream^ fs = File::OpenRead( path );
      try
      {
         array<Byte>^b = gcnew array<Byte>(1024);
         UTF8Encoding^ temp = gcnew UTF8Encoding( true );
         while ( fs->Read( b, 0, b->Length ) > 0 )
         {
            Console::WriteLine( temp->GetString( b ) );
         }
      }
      finally
      {
         if ( fs )
            delete (IDisposable^)fs;
      }
   }
}
using System;
using System.IO;
using System.Text;

class Test
{

    public static void Main()
    {
        string path = @"c:\temp\MyTest.txt";

        // Delete the file if it exists.
        if (File.Exists(path))
        {
            File.Delete(path);
        }

        //Create the file.
        using (FileStream fs = File.Create(path))
        {
            AddText(fs, "This is some text");
            AddText(fs, "This is some more text,");
            AddText(fs, "\r\nand this is on a new line");
            AddText(fs, "\r\n\r\nThe following is a subset of characters:\r\n");

            for (int i=1;i < 120;i++)
            {
                AddText(fs, Convert.ToChar(i).ToString());
            }
        }

        //Open the stream and read it back.
        using (FileStream fs = File.OpenRead(path))
        {
            byte[] b = new byte[1024];
            UTF8Encoding temp = new UTF8Encoding(true);
            int readLen;
            while ((readLen = fs.Read(b,0,b.Length)) > 0)
            {
                Console.WriteLine(temp.GetString(b,0,readLen));
            }
        }
    }

    private static void AddText(FileStream fs, string value)
    {
        byte[] info = new UTF8Encoding(true).GetBytes(value);
        fs.Write(info, 0, info.Length);
    }
}
Imports System.IO
Imports System.Text

Public Class Test

    Public Shared Sub Main()
        Dim path As String = "c:\temp\MyTest.txt"

        ' Delete the file if it exists.
        If File.Exists(path) Then
            File.Delete(path)
        End If

        'Create the file.
        Dim fs As FileStream = File.Create(path)

        AddText(fs, "This is some text")
        AddText(fs, "This is some more text,")
        AddText(fs, Environment.NewLine & "and this is on a new line")
        AddText(fs, Environment.NewLine & Environment.NewLine)
        AddText(fs, "The following is a subset of characters:" & Environment.NewLine)

        Dim i As Integer

        For i = 1 To 120
            AddText(fs, Convert.ToChar(i).ToString())

        Next

        fs.Close()

        'Open the stream and read it back.
        fs = File.OpenRead(path)
        Dim b(1023) As Byte
        Dim temp As UTF8Encoding = New UTF8Encoding(True)

        Do While fs.Read(b, 0, b.Length) > 0
            Console.WriteLine(temp.GetString(b))
        Loop

        fs.Close()
    End Sub

    Private Shared Sub AddText(ByVal fs As FileStream, ByVal value As String)
        Dim info As Byte() = New UTF8Encoding(True).GetBytes(value)
        fs.Write(info, 0, info.Length)
    End Sub
End Class

Das folgende Beispiel zeigt, wie asynchron in eine Datei geschrieben wird. Dieser Code wird in einer WPF-App ausgeführt, die über einen TextBlock mit dem Namen UserInput und eine Schaltfläche verfügt, die an einen Click-Ereignishandler mit dem Namen Button_Click angeschlossen ist. Der Dateipfad muss in eine Datei geändert werden, die auf dem Computer vorhanden ist.

using System;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.IO;

namespace WpfApplication1
{
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();
        }

        private async void Button_Click(object sender, RoutedEventArgs e)
        {
            UnicodeEncoding uniencoding = new UnicodeEncoding();
            string filename = @"c:\Users\exampleuser\Documents\userinputlog.txt";

            byte[] result = uniencoding.GetBytes(UserInput.Text);

            using (FileStream SourceStream = File.Open(filename, FileMode.OpenOrCreate))
            {
                SourceStream.Seek(0, SeekOrigin.End);
                await SourceStream.WriteAsync(result, 0, result.Length);
            }
        }
    }
}
Imports System.IO
Imports System.Text

Class MainWindow
    Private Async Sub Button_Click(sender As Object, e As RoutedEventArgs)
        Dim uniencoding As UnicodeEncoding = New UnicodeEncoding()
        Dim filename As String = "c:\Users\exampleuser\Documents\userinputlog.txt"

        Dim result As Byte() = uniencoding.GetBytes(UserInput.Text)

        Using SourceStream As FileStream = File.Open(filename, FileMode.OpenOrCreate)
            SourceStream.Seek(0, SeekOrigin.End)
            Await SourceStream.WriteAsync(result, 0, result.Length)
        End Using
    End Sub
End Class

Hinweise

Verwenden Sie die FileStream -Klasse zum Lesen, Schreiben, Öffnen und Schließen von Dateien in einem Dateisystem sowie zum Bearbeiten anderer dateibezogener Betriebssystemhandles, einschließlich Pipes, Standardeingabe und Standardausgabe. Sie können die ReadMethoden , Write, CopyTound Flush verwenden, um synchrone Vorgänge auszuführen, oder die ReadAsyncMethoden , WriteAsyncCopyToAsync, und FlushAsync zum Ausführen asynchroner Vorgänge. Verwenden Sie die asynchronen Methoden, um ressourcenintensive Dateivorgänge auszuführen, ohne den Hauptthread zu blockieren. Diese Überlegungen zur Leistung sind insbesondere in einer Windows 8.x Store-App oder Desktop-App wichtig, bei der ein zeitaufwendiger Streamingvorgang den UI-Thread blockieren kann und es dann den Anschein hat, dass Ihre App nicht funktioniert. FileStream puffert Eingabe und Ausgabe, um die Leistung zu verbessern.

Wichtig

Dieser Typ implementiert die IDisposable-Schnittstelle. Nach Abschluss der Verwendung sollten Sie den Typ entweder direkt oder indirekt löschen. Zum direkten Löschen des Typs rufen Sie seine Dispose-Methode in einem try/catch-Block auf. Zum indirekten Löschen verwenden Sie ein Sprachkonstrukt wie using (in C#) oder Using (in Visual Basic). Weitere Informationen finden Sie im Abschnitt „Verwenden eines Objekts, das IDisposable implementiert“ des Themas „Die IDisposable-Schnittstelle“.

Die IsAsync -Eigenschaft erkennt, ob das Dateihandle asynchron geöffnet wurde. Sie geben diesen Wert an, wenn Sie eine Instanz der -Klasse mithilfe eines Konstruktors erstellen, der FileStream über einen isAsync, useAsyncoder options -Parameter verfügt. Wenn die -Eigenschaft ist true, verwendet der Stream überlappende E/A, um Dateivorgänge asynchron auszuführen. Die -Eigenschaft muss jedoch nicht sein, IsAsync um true die -, WriteAsync- ReadAsyncoder CopyToAsync -Methode aufzurufen. Wenn die IsAsync -Eigenschaft ist false und Sie die asynchronen Lese- und Schreibvorgänge aufrufen, wird der UI-Thread weiterhin nicht blockiert, aber der eigentliche E/A-Vorgang wird synchron ausgeführt.

Die Seek -Methode unterstützt den zufälligen Zugriff auf Dateien. Seek ermöglicht das Verschieben der Lese-/Schreibposition an eine beliebige Position innerhalb der Datei. Dies erfolgt mit Byteoffset-Referenzpunktparametern. Der Byteoffset ist relativ zum Suchverweispunkt, der der Anfang, die aktuelle Position oder das Ende der zugrunde liegenden Datei sein kann, wie durch die drei Member der SeekOrigin Enumeration dargestellt.

Hinweis

Datenträgerdateien unterstützen immer den zufälligen Zugriff. Zum Zeitpunkt der Erstellung wird der CanSeek Eigenschaftswert auf true oder false abhängig vom zugrunde liegenden Dateityp festgelegt. Wenn der zugrunde liegende Dateityp FILE_TYPE_DISK ist, wie in winbase.h definiert, ist trueder CanSeek -Eigenschaftswert . Andernfalls ist falseder CanSeek -Eigenschaftswert .

Wenn ein Prozess mit einem Teil einer Datei beendet oder eine Datei mit ausstehenden Sperren geschlossen wird, ist das Verhalten nicht definiert.

Informationen zu Verzeichnisvorgängen und anderen Dateivorgängen finden Sie in den FileKlassen , Directoryund Path . Die File -Klasse ist eine Hilfsprogrammklasse mit statischen Methoden, die in erster Linie für die Erstellung von FileStream Objekten basierend auf Dateipfaden verwendet werden. Die MemoryStream -Klasse erstellt einen Stream aus einem Bytearray und ähnelt der FileStream -Klasse.

Eine Liste der allgemeinen Datei- und Verzeichnisvorgänge finden Sie unter Allgemeine E/A-Aufgaben.

Erkennung von Datenstrompositionsänderungen

Wenn ein FileStream Objekt nicht über einen exklusiven Haltepunkt für sein Handle verfügt, kann ein anderer Thread gleichzeitig auf das Dateihandle zugreifen und die Position des Dateizeigers des Betriebssystems ändern, der dem Dateihandle zugeordnet ist. In diesem Fall könnten die zwischengespeicherte Position im FileStream Objekt und die zwischengespeicherten Daten im Puffer kompromittiert werden. Das FileStream -Objekt führt routinemäßig Überprüfungen für Methoden durch, die auf den zwischengespeicherten Puffer zugreifen, um sicherzustellen, dass die Handleposition des Betriebssystems mit der zwischengespeicherten Position übereinstimmt, die FileStream vom Objekt verwendet wird.

Wenn bei einem Aufruf Read der -Methode eine unerwartete Änderung der Handleposition erkannt wird, verwirft die .NET Framework den Inhalt des Puffers und liest den Stream erneut aus der Datei. Dies kann abhängig von der Größe der Datei und anderen Prozessen, die sich auf die Position des Dateidatenstroms auswirken können, die Leistung beeinträchtigen.

Wenn bei einem Aufruf Write der -Methode eine unerwartete Änderung der Handleposition erkannt wird, wird der Inhalt des Puffers verworfen, und es wird eine IOException Ausnahme ausgelöst.

Ein FileStream Objekt verfügt nicht über einen exklusiven Haltepunkt für sein Handle, wenn entweder auf die SafeFileHandle Eigenschaft zugegriffen wird, um das Handle verfügbar zu machen, oder das FileStream Objekt erhält die SafeFileHandle -Eigenschaft in seinem Konstruktor.

Konstruktoren

FileStream(IntPtr, FileAccess)
Veraltet.
Veraltet.
Veraltet.
Veraltet.

Initialisiert eine neue Instanz der FileStream-Klasse für das angegebene Dateihandle und mit der angegebenen Lese- und Schreibberechtigung.

FileStream(IntPtr, FileAccess, Boolean)
Veraltet.
Veraltet.
Veraltet.
Veraltet.

Initialisiert eine neue Instanz der FileStream-Klasse für das angegebene Dateihandle mit den Angaben für die Lese-/Schreibberechtigung und für den Besitz der FileStream-Instanz.

FileStream(IntPtr, FileAccess, Boolean, Int32)
Veraltet.
Veraltet.
Veraltet.
Veraltet.

Initialisiert eine neue Instanz der FileStream-Klasse für das angegebene Dateihandle mit den Angaben für die Lese-/Schreibberechtigung, den Besitz der FileStream-Instanz und die Puffergröße.

FileStream(IntPtr, FileAccess, Boolean, Int32, Boolean)
Veraltet.
Veraltet.
Veraltet.
Veraltet.

Initialisiert eine neue Instanz der FileStream-Klasse für das angegebene Dateihandle mit den Angaben für die Lese-/Schreibberechtigung, den Besitz der FileStream-Instanz, die Puffergröße und den synchronen bzw. asynchronen Zustand.

FileStream(SafeFileHandle, FileAccess)

Initialisiert eine neue Instanz der FileStream-Klasse für das angegebene Dateihandle und mit der angegebenen Lese- und Schreibberechtigung.

FileStream(SafeFileHandle, FileAccess, Int32)

Initialisiert eine neue Instanz der FileStream-Klasse für das angegebene Dateihandle mit den Angaben für die Lese-/Schreibberechtigung und die Puffergröße.

FileStream(SafeFileHandle, FileAccess, Int32, Boolean)

Initialisiert eine neue Instanz der FileStream-Klasse für das angegebene Dateihandle mit den Angaben für die Lese-/Schreibberechtigung, die Puffergröße und den synchronen bzw. asynchronen Zustand.

FileStream(String, FileMode)

Initialisiert eine neue Instanz der FileStream-Klasse mit dem angegebenen Pfad und dem angegebenen Erstellungsmodus.

FileStream(String, FileMode, FileAccess)

Initialisiert eine neue Instanz der FileStream-Klasse mit den Angaben für den Pfad, den Erstellungsmodus und die Lese-/Schreibberechtigung.

FileStream(String, FileMode, FileAccess, FileShare)

Initialisiert eine neue Instanz der FileStream-Klasse mit den Angaben für den Pfad, den Erstellungsmodus, die Lese-/Schreib- und Freigabeberechtigung.

FileStream(String, FileMode, FileAccess, FileShare, Int32)

Initialisiert eine neue Instanz der FileStream-Klasse mit den Angaben für den Pfad, den Erstellungsmodus, die Lese-/Schreib- und Freigabeberechtigung sowie die Puffergröße.

FileStream(String, FileMode, FileAccess, FileShare, Int32, Boolean)

Initialisiert eine neue Instanz der FileStream-Klasse mit den Angaben für den Pfad, den Erstellungsmodus, die Lese-/Schreib- und Freigabeberechtigung, die Puffergröße und den synchronen bzw. asynchronen Zustand.

FileStream(String, FileMode, FileAccess, FileShare, Int32, FileOptions)

Initialisiert eine neue Instanz der FileStream-Klasse mit den Angaben für den Pfad, den Erstellungsmodus, die Lese-/Schreib- und Freigabeberechtigung, die Zugriffsmöglichkeiten anderer FileStreams auf die gleiche Datei, die Puffergröße und zusätzliche Dateioptionen.

FileStream(String, FileMode, FileSystemRights, FileShare, Int32, FileOptions)

Initialisiert eine neue Instanz der FileStream-Klasse mit den Angaben für den Pfad, den Erstellungsmodus, die Zugriffsrechte und die Freigabeberechtigung, die Puffergröße und zusätzliche Dateioptionen.

FileStream(String, FileMode, FileSystemRights, FileShare, Int32, FileOptions, FileSecurity)

Initialisiert eine neue Instanz der FileStream-Klasse mit den Angaben für den Pfad, den Erstellungsmodus, die Zugriffsrechte und die Freigabeberechtigung, die Puffergröße, zusätzliche Dateioptionen, die Zugriffssteuerung und die Überwachungssicherheit.

FileStream(String, FileStreamOptions)

Initialisiert eine neue Instanz der -Klasse mit dem FileStream angegebenen Pfad, erstellungsmodus, Lese-/Schreib- und Freigabeberechtigung, Puffergröße, zusätzlichen Dateioptionen, Vorabspeicherungsgröße und dem Zugriff, den andere FileStreams auf dieselbe Datei haben können.

Eigenschaften

CanRead

Ruft einen Wert ab, der angibt, ob der aktuelle Stream Lesevorgänge unterstützt.

CanSeek

Ruft einen Wert ab, der angibt, ob der aktuelle Stream Suchvorgänge unterstützt.

CanTimeout

Ruft einen Wert ab, der bestimmt, ob für den aktuellen Stream ein Timeout möglich ist.

(Geerbt von Stream)
CanWrite

Ruft einen Wert ab, der angibt, ob der aktuelle Stream Schreibvorgänge unterstützt.

Handle
Veraltet.
Veraltet.
Veraltet.
Veraltet.

Ruft das Dateihandle des Betriebssystems für die Datei ab, die durch das aktuelle FileStream-Objekt gekapselt wird.

IsAsync

Ruft einen Wert ab, der angibt, ob der FileStream asynchron oder synchron geöffnet wurde.

Length

Ruft die Länge des Streams in Bytes ab.

Name

Ruft den absoluten Pfad der Datei auf, die im FileStream geöffnet wurde.

Position

Ruft die aktuelle Position dieses Streams ab oder legt diese fest.

ReadTimeout

Ruft einen Wert in Millisekunden ab, der bestimmt, wie lange der Stream versucht, Lesevorgänge durchzuführen, bevor ein Timeout auftritt, oder legt diesen fest.

(Geerbt von Stream)
SafeFileHandle

Ruft ein SafeFileHandle-Objekt ab, das das Dateihandle des Betriebssystems für die Datei darstellt, die vom aktuellen FileStream-Objekt gekapselt wird.

WriteTimeout

Ruft einen Wert in Millisekunden ab, der bestimmt, wie lange der Stream versucht, Schreibvorgänge durchzuführen, bevor ein Timeout auftritt, oder legt diesen fest.

(Geerbt von Stream)

Methoden

BeginRead(Byte[], Int32, Int32, AsyncCallback, Object)

Beginnt einen asynchronen Lesevorgang. Verwenden Sie stattdessen ReadAsync(Byte[], Int32, Int32, CancellationToken).

BeginRead(Byte[], Int32, Int32, AsyncCallback, Object)

Beginnt einen asynchronen Lesevorgang. (Verwenden Sie stattdessen ReadAsync(Byte[], Int32, Int32).)

(Geerbt von Stream)
BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object)

Beginnt einen asynchronen Schreibvorgang. Verwenden Sie stattdessen WriteAsync(Byte[], Int32, Int32, CancellationToken).

BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object)

Beginnt einen asynchronen Schreibvorgang. (Verwenden Sie stattdessen WriteAsync(Byte[], Int32, Int32).)

(Geerbt von Stream)
Close()

Schließt den aktuellen Stream und gibt alle dem aktuellen Stream zugeordneten Ressourcen frei (z. B. Sockets und Dateihandles).

Close()

Schließt den aktuellen Stream und gibt alle dem aktuellen Stream zugeordneten Ressourcen frei (z. B. Sockets und Dateihandles). Anstatt diese Methode aufzurufen, stellen Sie sicher, dass der Stream ordnungsgemäß freigegeben wird.

(Geerbt von Stream)
CopyTo(Stream)

Liest alle Bytes aus dem aktuellen Stream und schreibt sie in einen anderen Datenstrom. Beide Streamspositionen werden um die Anzahl der kopierten Bytes erweitert.

(Geerbt von Stream)
CopyTo(Stream, Int32)

Liest alles Bytes aus dem aktuellen Datenstrom und schreibt sie unter Verwendung einer angegebenen Puffergröße in einen anderen Datenstrom. Beide Streamspositionen werden um die Anzahl der kopierten Bytes erweitert.

(Geerbt von Stream)
CopyToAsync(Stream)

Liest die Bytes asynchron aus dem aktuellen Stream und schreibt sie in einen anderen Stream. Beide Streamspositionen werden um die Anzahl der kopierten Bytes erweitert.

(Geerbt von Stream)
CopyToAsync(Stream, CancellationToken)

Liest die Bytes asynchron aus dem aktuellen Stream und schreibt sie unter Verwendung eines angegebenen Abbruchtokens in einen anderen Stream. Beide Streamspositionen werden um die Anzahl der kopierten Bytes erweitert.

(Geerbt von Stream)
CopyToAsync(Stream, Int32)

Liest die Bytes asynchron aus dem aktuellen Stream und schreibt sie unter Verwendung einer angegebenen Puffergröße in einen anderen Stream. Beide Streamspositionen werden um die Anzahl der kopierten Bytes erweitert.

(Geerbt von Stream)
CopyToAsync(Stream, Int32, CancellationToken)

Liest die Bytes asynchron aus dem aktuellen Dateidatenstrom und schreibt sie unter Verwendung einer angegebenen Puffergröße und eines Abbruchtokens in einen anderen Datenstrom.

CopyToAsync(Stream, Int32, CancellationToken)

Liest die Bytes asynchron aus dem aktuellen Stream und schreibt sie unter Verwendung einer angegebenen Puffergröße und eines Abbruchtokens in einen anderen Stream. Beide Streamspositionen werden um die Anzahl der kopierten Bytes erweitert.

(Geerbt von Stream)
CreateObjRef(Type)

Erstellt ein Objekt mit allen relevanten Informationen, die zum Generieren eines Proxys für die Kommunikation mit einem Remoteobjekt erforderlich sind.

(Geerbt von MarshalByRefObject)
CreateWaitHandle()
Veraltet.
Veraltet.
Veraltet.

Reserviert ein WaitHandle-Objekt.

(Geerbt von Stream)
Dispose()

Gibt alle vom Stream verwendeten Ressourcen frei.

(Geerbt von Stream)
Dispose(Boolean)

Gibt die von FileStream verwendeten nicht verwalteten Ressourcen und optional die verwalteten Ressourcen frei.

DisposeAsync()

Gibt die nicht verwalteten Ressourcen, die von der FileStream verwendet werden, asynchron frei.

DisposeAsync()

Gibt die nicht verwalteten Ressourcen, die von der Stream verwendet werden, asynchron frei.

(Geerbt von Stream)
EndRead(IAsyncResult)

Wartet, bis der ausstehende asynchrone Lesevorgang abgeschlossen ist. (Verwenden Sie stattdessen ReadAsync(Byte[], Int32, Int32, CancellationToken).)

EndRead(IAsyncResult)

Wartet, bis der ausstehende asynchrone Lesevorgang abgeschlossen ist. (Verwenden Sie stattdessen ReadAsync(Byte[], Int32, Int32).)

(Geerbt von Stream)
EndWrite(IAsyncResult)

Beendet einen asynchronen Schreibvorgang und blockiert, bis die E/A-Operation abgeschlossen wurde. (Verwenden Sie stattdessen WriteAsync(Byte[], Int32, Int32, CancellationToken).)

EndWrite(IAsyncResult)

Beendet einen asynchronen Schreibvorgang. (Verwenden Sie stattdessen WriteAsync(Byte[], Int32, Int32).)

(Geerbt von Stream)
Equals(Object)

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.

(Geerbt von Object)
Finalize()

Stellt das Freigeben von Ressourcen und das Ausführen anderer Bereinigungsvorgänge sicher, wenn der Garbage Collector den FileStream verarbeitet.

Flush()

Löscht die Puffer für diesen Datenstrom und veranlasst die Ausgabe aller gepufferten Daten in die Datei.

Flush(Boolean)

Löscht die Puffer für diesen Datenstrom, veranlasst die Ausgabe aller gepufferten Daten in die Datei und löscht zudem alle Zwischendateipuffer.

FlushAsync()

Löscht sämtliche Puffer für diesen Stream asynchron und veranlasst die Ausgabe aller gepufferten Daten an das zugrunde liegende Gerät.

(Geerbt von Stream)
FlushAsync(CancellationToken)

Löscht alle Puffer für diesen Stream asynchron und veranlasst die Ausgabe aller gepufferten Daten an das zugrunde liegende Gerät und überwacht Abbruchanforderungen.

FlushAsync(CancellationToken)

Löscht alle Puffer für diesen Stream asynchron und veranlasst die Ausgabe aller gepufferten Daten an das zugrunde liegende Gerät und überwacht Abbruchanforderungen.

(Geerbt von Stream)
GetAccessControl()

Ruft ein FileSecurity-Objekt ab, das die Einträge in der Zugriffssteuerungsliste für die Datei kapselt, das vom aktuellen FileStream-Objekt beschrieben wird.

GetHashCode()

Fungiert als Standardhashfunktion.

(Geerbt von Object)
GetLifetimeService()
Veraltet.

Ruft das aktuelle Lebensdauerdienstobjekt ab, das die Lebensdauerrichtlinien für diese Instanz steuert.

(Geerbt von MarshalByRefObject)
GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
InitializeLifetimeService()
Veraltet.

Ruft ein Lebensdauerdienstobjekt zur Steuerung der Lebensdauerrichtlinie für diese Instanz ab.

(Geerbt von MarshalByRefObject)
Lock(Int64, Int64)

Verhindert, dass andere Prozesse im FileStream lesen oder schreiben.

MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
MemberwiseClone(Boolean)

Erstellt eine flache Kopie des aktuellen MarshalByRefObject-Objekts.

(Geerbt von MarshalByRefObject)
ObjectInvariant()
Veraltet.

Bietet Unterstützung für einen Contract.

(Geerbt von Stream)
Read(Byte[], Int32, Int32)

Liest einen Byteblock aus dem Stream und schreibt die Daten in einen angegebenen Puffer.

Read(Span<Byte>)

Liest eine Bytesequenz aus dem aktuellen Dateidatenstrom und setzt die Position in diesem Dateidatenstrom um die Anzahl der gelesenen Bytes nach vorn.

Read(Span<Byte>)

Liest beim Überschreiben in einer abgeleiteten Klasse eine Folge von Bytes aus dem aktuellen Stream und erhöht die Position im Stream um die Anzahl der gelesenen Bytes.

(Geerbt von Stream)
ReadAsync(Byte[], Int32, Int32)

Liest eine Bytesequenz asynchron aus dem aktuellen Stream und setzt die Position in diesem Stream um die Anzahl der gelesenen Bytes nach vorn.

(Geerbt von Stream)
ReadAsync(Byte[], Int32, Int32, CancellationToken)

Liest eine Folge von Bytes asynchron aus dem aktuellen Dateidatenstrom, schreibt diese beginnend bei einem angegebenen Offset in ein Bytearray, erhöht die Position im Dateidatenstrom um die Anzahl der gelesenen Bytes und überwacht Abbruchsanforderungen.

ReadAsync(Byte[], Int32, Int32, CancellationToken)

Liest eine Folge von Bytes asynchron aus aktuellen Stream, erhöht die Position im Stream um die Anzahl der gelesenen Bytes und überwacht Abbruchanfragen.

(Geerbt von Stream)
ReadAsync(Memory<Byte>, CancellationToken)

Liest eine Folge von Bytes asynchron aus dem aktuellen Dateidatenstrom, schreibt diese in einen Speicherbereich, erhöht die Position im Dateidatenstrom um die Anzahl der gelesenen Bytes und überwacht Abbruchsanforderungen.

ReadAsync(Memory<Byte>, CancellationToken)

Liest eine Folge von Bytes asynchron aus aktuellen Stream, erhöht die Position im Stream um die Anzahl der gelesenen Bytes und überwacht Abbruchanfragen.

(Geerbt von Stream)
ReadAtLeast(Span<Byte>, Int32, Boolean)

Liest mindestens eine Mindestanzahl von Bytes aus dem aktuellen Stream und erhöht die Position innerhalb des Datenstroms um die Anzahl der gelesenen Bytes.

(Geerbt von Stream)
ReadAtLeastAsync(Memory<Byte>, Int32, Boolean, CancellationToken)

Liest asynchron mindestens eine Mindestanzahl von Bytes aus dem aktuellen Stream, erhöht die Position innerhalb des Datenstroms um die Anzahl der gelesenen Bytes und überwacht Abbruchanforderungen.

(Geerbt von Stream)
ReadByte()

Liest ein Byte aus der Datei und erhöht die Leseposition um ein Byte.

ReadExactly(Byte[], Int32, Int32)

count Liest die Anzahl von Bytes aus dem aktuellen Stream und verschiebt die Position innerhalb des Datenstroms.

(Geerbt von Stream)
ReadExactly(Span<Byte>)

Liest Bytes aus dem aktuellen Stream und verschiebt die Position innerhalb des Datenstroms, bis der buffer gefüllt ist.

(Geerbt von Stream)
ReadExactlyAsync(Byte[], Int32, Int32, CancellationToken)

Liest count asynchron die Anzahl von Bytes aus dem aktuellen Stream, erhöht die Position innerhalb des Datenstroms und überwacht Abbruchanforderungen.

(Geerbt von Stream)
ReadExactlyAsync(Memory<Byte>, CancellationToken)

Liest Bytes asynchron aus dem aktuellen Stream, verschiekt die Position innerhalb des Datenstroms, bis der buffer gefüllt ist, und überwacht Abbruchanforderungen.

(Geerbt von Stream)
Seek(Int64, SeekOrigin)

Legt die aktuelle Position dieses Streams auf den angegebenen Wert fest.

SetAccessControl(FileSecurity)

Wendet von einem FileSecurity-Objekt beschriebene Einträge in Zugriffssteuerungslisten auf die Datei an, die vom aktuellen FileStream-Objekt beschrieben wird.

SetLength(Int64)

Legt die Länge dieses Streams auf den angegebenen Wert fest.

ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)
Unlock(Int64, Int64)

Ermöglicht anderen Prozessen den Zugriff auf die gesamte Datei oder einen Teil der Datei, die zuvor gesperrt war.

Write(Byte[], Int32, Int32)

Schreibt einen Block von Bytes in den Dateistream.

Write(ReadOnlySpan<Byte>)

Schreibt eine Bytesequenz aus einer schreibgeschützten Spanne in den aktuellen Dateidatenstrom und setzt die aktuelle Position in diesem Dateidatenstrom um die Anzahl der geschriebenen Bytes nach vorn.

Write(ReadOnlySpan<Byte>)

Schreibt beim Überschreiben in einer abgeleiteten Klasse eine Folge von Bytes in den aktuellen Stream und erhöht die aktuelle Position im Stream um die Anzahl der geschriebenen Bytes.

(Geerbt von Stream)
WriteAsync(Byte[], Int32, Int32)

Schreibt eine Bytesequenz asynchron in den aktuellen Stream und setzt die aktuelle Position in diesem Stream um die Anzahl der geschriebenen Bytes nach vorn.

(Geerbt von Stream)
WriteAsync(Byte[], Int32, Int32, CancellationToken)

Schreibt beim Überschreiben in einer abgeleiteten Klasse eine Folge von Bytes asynchron in den aktuellen Stream und erhöht die aktuelle Position im Stream um die Anzahl der geschriebenen Bytes und überwacht Abbruchanforderungen.

WriteAsync(Byte[], Int32, Int32, CancellationToken)

Schreibt beim Überschreiben in einer abgeleiteten Klasse eine Folge von Bytes asynchron in den aktuellen Stream und erhöht die aktuelle Position im Stream um die Anzahl der geschriebenen Bytes und überwacht Abbruchanforderungen.

(Geerbt von Stream)
WriteAsync(ReadOnlyMemory<Byte>, CancellationToken)

Schreibt eine Bytesequenz aus einem Speicherbereich asynchron in den aktuellen Dateidatenstrom, erhöht die aktuelle Position im Dateidatenstrom um die Anzahl geschriebener Bytes und überwacht Abbruchanforderungen.

WriteAsync(ReadOnlyMemory<Byte>, CancellationToken)

Schreibt beim Überschreiben in einer abgeleiteten Klasse eine Folge von Bytes asynchron in den aktuellen Stream und erhöht die aktuelle Position im Stream um die Anzahl der geschriebenen Bytes und überwacht Abbruchanforderungen.

(Geerbt von Stream)
WriteByte(Byte)

Schreibt ein Byte an die aktuelle Position im Dateistream.

Explizite Schnittstellenimplementierungen

IDisposable.Dispose()

Gibt alle vom Stream verwendeten Ressourcen frei.

(Geerbt von Stream)

Erweiterungsmethoden

GetAccessControl(FileStream)

Gibt die Sicherheitsinformationen einer Datei zurück.

SetAccessControl(FileStream, FileSecurity)

Ändert die Sicherheitsattribute einer vorhandenen Datei.

AsInputStream(Stream)

Konvertiert einen verwalteten Stream in .NET für Microsoft Store-Apps in einen Eingabestream in der Windows-Runtime.

AsOutputStream(Stream)

Konvertiert einen verwalteten Stream in .NET für Microsoft Store-Apps in einen Ausgabestream in der Windows-Runtime.

AsRandomAccessStream(Stream)

Konvertiert den angegebenen Stream in einen Random-Access-Stream.

ConfigureAwait(IAsyncDisposable, Boolean)

Konfiguriert, wie Wartezeiten auf die Aufgaben angewandt werden, die von einem asynchronen verwerfbaren Element zurückgegeben werden.

Gilt für

Siehe auch