FileStream FileStream FileStream FileStream Class

Definition

Stellt einen Stream für eine Datei bereit, wobei synchrone und asynchrone Lese- und Schreibvorgänge unterstützt werden.Provides a Stream for a file, supporting both synchronous and asynchronous read and write operations.

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

Beispiele

Im folgenden Beispiel werden einige FileStream der Konstruktoren veranschaulicht.The following example demonstrates some of the FileStream constructors.

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);
            while (fs.Read(b,0,b.Length) > 0)
            {
                Console.WriteLine(temp.GetString(b));
            }
        }
    }

    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

Im folgenden Beispiel wird gezeigt, wie Sie asynchron in eine Datei schreiben.The following example shows how to write to a file asynchronously. Dieser Code wird in einer WPF-App ausgeführt, die einen TextBlock mit dem Namen UserInput und eine Schaltfläche enthält, die an einen Click-Ereignishandler mit dem Namen Button_Click angeschlossen ist.This code runs in a WPF app that has a TextBlock named UserInput and a button hooked up to a Click event handler that is named Button_Click. Der Dateipfad muss in eine Datei geändert werden, die auf dem Computer vorhanden ist.The file path needs to be changed to a file that exists on the computer.

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 FileStream die-Klasse zum Lesen, schreiben, öffnen und Schließen von Dateien in einem Dateisystem und zum Bearbeiten anderer Datei bezogener Betriebssystem Handles, einschließlich Pipes, Standardeingabe und Standardausgabe.Use the FileStream class to read from, write to, open, and close files on a file system, and to manipulate other file-related operating system handles, including pipes, standard input, and standard output. Sie können die ReadMethoden, Write, CopyTound Flush verwenden, um synchrone Vorgänge auszuführen, oder ReadAsyncdie WriteAsyncMethoden CopyToAsync,, FlushAsync und, um asynchrone Vorgänge auszuführen. Operations.You can use the Read, Write, CopyTo, and Flush methods to perform synchronous operations, or the ReadAsync, WriteAsync, CopyToAsync, and FlushAsync methods to perform asynchronous operations. Verwenden Sie die asynchronen Methoden, um ressourcenintensive Datei Vorgänge auszuführen, ohne den Haupt Thread zu blockieren.Use the asynchronous methods to perform resource-intensive file operations without blocking the main thread. Diese Überlegungen zur Leistung sind insbesondere in einer Windows 8.x StoreWindows 8.x Store -App oder Desktopdesktop -App wichtig, bei der ein zeitaufwendiger Streamvorgang den UI-Thread blockieren kann und es dann den Anschein hat, dass Ihre App nicht funktioniert.This performance consideration is particularly important in a Windows 8.x StoreWindows 8.x Store app or Desktopdesktop app where a time-consuming stream operation can block the UI thread and make your app appear as if it is not working. FileStreampuffert Eingabe und Ausgabe für eine bessere Leistung.FileStream buffers input and output for better performance.

Wichtig

Dieser Typ implementiert die IDisposable-Schnittstelle.This type implements the IDisposable interface. Nach Abschluss der Verwendung sollten Sie den Typ entweder direkt oder indirekt löschen.When you have finished using the type, you should dispose of it either directly or indirectly. Zum direkten Löschen des Typs rufen Sie seine Dispose-Methode in einem try/catch-Block auf.To dispose of the type directly, call its Dispose method in a try/catch block. Zum indirekten Löschen verwenden Sie ein Sprachkonstrukt wie using (in C#) oder Using (in Visual Basic).To dispose of it indirectly, use a language construct such as using (in C#) or Using (in Visual Basic). Weitere Informationen finden Sie im Abschnitt „Verwenden eines Objekts, das IDisposable implementiert“ des Themas „Die IDisposable-Schnittstelle“.For more information, see the "Using an Object that Implements IDisposable" section in the IDisposable interface topic.

Die IsAsync -Eigenschaft erkennt, ob das Datei Handle asynchron geöffnet wurde.The IsAsync property detects whether the file handle was opened asynchronously. Sie geben diesen Wert an, wenn Sie eine Instanz der FileStream -Klasse mithilfe eines Konstruktors erstellen, isAsyncder useAsynceinen- options ,-oder-Parameter aufweist.You specify this value when you create an instance of the FileStream class using a constructor that has an isAsync, useAsync, or options parameter. Wenn die-Eigenschaft trueist, verwendet der Stream überlappende e/a-Vorgänge zum asynchronen Ausführen von Datei Vorgängen.When the property is true, the stream utilizes overlapped I/O to perform file operations asynchronously. Allerdings muss IsAsync true die-Eigenschaft nicht die ReadAsync-, WriteAsync-oder CopyToAsync -Methode aufzurufen.However, the IsAsync property does not have to be true to call the ReadAsync, WriteAsync, or CopyToAsync method. Wenn die IsAsync -Eigenschaft false ist und Sie die asynchronen Lese-und Schreibvorgänge aufzurufen, wird der UI-Thread immer noch nicht blockiert, aber der tatsächliche e/a-Vorgang wird synchron ausgeführt.When the IsAsync property is false and you call the asynchronous read and write operations, the UI thread is still not blocked, but the actual I/O operation is performed synchronously.

Die Seek -Methode unterstützt den zufälligen Zugriff auf Dateien.The Seek method supports random access to files. Seekermöglicht das Verschieben der Lese-/Schreibposition an eine beliebige Position innerhalb der Datei.Seek allows the read/write position to be moved to any position within the file. Dies erfolgt mit Byte Offset-Verweis Punkt Parametern.This is done with byte offset reference point parameters. Der Byte Offset ist relativ zum Seek Reference Point, der als Anfang, der aktuellen Position oder dem Ende der zugrunde liegenden Datei, wie durch die drei Member der SeekOrigin -Enumeration dargestellt, vorhanden sein kann.The byte offset is relative to the seek reference point, which can be the beginning, the current position, or the end of the underlying file, as represented by the three members of the SeekOrigin enumeration.

Hinweis

Datenträger Dateien unterstützen immer den zufälligen Zugriff.Disk files always support random access. Zum Zeitpunkt der Erstellung wird der CanSeek -Eigenschafts Wert auf true oder false festgelegt, je nach dem zugrunde liegenden Dateityp. Wenn der zugrunde liegende Dateityp FILE_TYPE_DISK ist, wie in Winbase. h definiert CanSeek , ist trueder-Eigenschafts Wert.At the time of construction, the CanSeek property value is set to true or false depending on the underlying file type.If the underlying file type is FILE_TYPE_DISK, as defined in winbase.h, the CanSeek property value is true. Andernfalls ist CanSeek falseder-Eigenschafts Wert.Otherwise, the CanSeek property value is false.

Wenn ein Prozess beendet wird, wenn ein Teil einer Datei gesperrt ist oder eine Datei mit ausstehenden Sperren schließt, ist das Verhalten nicht definiert.If a process terminates with part of a file locked or closes a file that has outstanding locks, the behavior is undefined.

Informationen zu Verzeichnis Vorgängen und anderen Datei Vorgängen Filefinden DirectorySie in Path den Klassen, und.For directory operations and other file operations, see the File, Directory, and Path classes. Die File -Klasse ist eine Hilfsprogrammklasse, die über statische Methoden verfügt, FileStream die in erster Linie für die Erstellung von Objekten auf Grundlage von DateipfadenThe File class is a utility class that has static methods primarily for the creation of FileStream objects based on file paths. Die MemoryStream -Klasse erstellt einen Stream aus einem Bytearray und ähnelt der FileStream -Klasse.The MemoryStream class creates a stream from a byte array and is similar to the FileStream class.

Eine Liste der allgemeinen Datei-und Verzeichnis Vorgänge finden Sie unter Allgemeine e/a-Aufgaben.For a list of common file and directory operations, see Common I/O Tasks.

Erkennen von Änderungen an der StreampositionDetection of Stream Position Changes

Wenn ein FileStream -Objekt nicht über einen exklusiven Halt für sein Handle verfügt, könnte ein anderer Thread gleichzeitig auf das Datei Handle zugreifen und die Position des Dateizeigers des Betriebssystems ändern, der dem Datei Handle zugeordnet ist.When a FileStream object does not have an exclusive hold on its handle, another thread could access the file handle concurrently and change the position of the operating system's file pointer that is associated with the file handle. In diesem Fall könnte die zwischengespeicherte Position im FileStream -Objekt und die zwischengespeicherten Daten im Puffer kompromittiert werden.In this case, the cached position in the FileStream object and the cached data in the buffer could be compromised. Das FileStream Objekt führt routinemäßig Überprüfungen für Methoden FileStream durch, die auf den zwischengespeicherten Puffer zugreifen, um sicherzustellen, dass die Handle-Position des Betriebssystems mit der zwischengespeicherten Position des Objekts übereinstimmt.The FileStream object routinely performs checks on methods that access the cached buffer to ensure that the operating system's handle position is the same as the cached position used by the FileStream object.

Wenn eine unerwartete Änderung an der Position des Handles beim Abrufen der Read -Methode erkannt wird, verwirft das .NET Framework den Inhalt des Puffers und liest den Stream erneut aus der Datei.If an unexpected change in the handle position is detected in a call to the Read method, the .NET Framework discards the contents of the buffer and reads the stream from the file again. Dies kann sich auf die Leistung auswirken, abhängig von der Größe der Datei und anderen Prozessen, die sich auf die Position des Datei Datenstroms auswirken könnten.This can affect performance, depending on the size of the file and any other processes that could affect the position of the file stream.

Wenn eine unerwartete Änderung an der Position des Handles beim Abrufen der Write -Methode erkannt wird, wird der Inhalt des Puffers verworfen und eine IOException Ausnahme ausgelöst.If an unexpected change in the handle position is detected in a call to the Write method, the contents of the buffer are discarded and an IOException exception is thrown.

Ein FileStream -Objekt hat keinen exklusiven Halt für sein handle, wenn auf die SafeFileHandle -Eigenschaft zugegriffen wird, um das Handle verfügbar FileStream zu machen, oder SafeFileHandle dem Objekt wird die-Eigenschaft im Konstruktor zugewiesen.A FileStream object will not have an exclusive hold on its handle when either the SafeFileHandle property is accessed to expose the handle or the FileStream object is given the SafeFileHandle property in its constructor.

Konstruktoren

FileStream(IntPtr, FileAccess) FileStream(IntPtr, FileAccess) FileStream(IntPtr, FileAccess) FileStream(IntPtr, FileAccess)

Initialisiert eine neue Instanz der FileStream-Klasse für das angegebene Dateihandle und mit der angegebenen Lese- und Schreibberechtigung.Initializes a new instance of the FileStream class for the specified file handle, with the specified read/write permission.

FileStream(IntPtr, FileAccess, Boolean) FileStream(IntPtr, FileAccess, Boolean) FileStream(IntPtr, FileAccess, Boolean) FileStream(IntPtr, FileAccess, Boolean)

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.Initializes a new instance of the FileStream class for the specified file handle, with the specified read/write permission and FileStream instance ownership.

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

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.Initializes a new instance of the FileStream class for the specified file handle, with the specified read/write permission, FileStream instance ownership, and buffer size.

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

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.Initializes a new instance of the FileStream class for the specified file handle, with the specified read/write permission, FileStream instance ownership, buffer size, and synchronous or asynchronous state.

FileStream(SafeFileHandle, FileAccess) FileStream(SafeFileHandle, FileAccess) FileStream(SafeFileHandle, FileAccess) FileStream(SafeFileHandle, FileAccess)

Initialisiert eine neue Instanz der FileStream-Klasse für das angegebene Dateihandle und mit der angegebenen Lese- und Schreibberechtigung.Initializes a new instance of the FileStream class for the specified file handle, with the specified read/write permission.

FileStream(SafeFileHandle, FileAccess, Int32) FileStream(SafeFileHandle, FileAccess, Int32) FileStream(SafeFileHandle, FileAccess, Int32) 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.Initializes a new instance of the FileStream class for the specified file handle, with the specified read/write permission, and buffer size.

FileStream(SafeFileHandle, FileAccess, Int32, Boolean) FileStream(SafeFileHandle, FileAccess, Int32, Boolean) FileStream(SafeFileHandle, FileAccess, Int32, Boolean) 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.Initializes a new instance of the FileStream class for the specified file handle, with the specified read/write permission, buffer size, and synchronous or asynchronous state.

FileStream(String, FileMode) FileStream(String, FileMode) FileStream(String, FileMode) FileStream(String, FileMode)

Initialisiert eine neue Instanz der FileStream-Klasse mit dem angegebenen Pfad und dem angegebenen Erstellungsmodus.Initializes a new instance of the FileStream class with the specified path and creation mode.

FileStream(String, FileMode, FileAccess) FileStream(String, FileMode, FileAccess) FileStream(String, FileMode, FileAccess) FileStream(String, FileMode, FileAccess)

Initialisiert eine neue Instanz der FileStream-Klasse mit den Angaben für den Pfad, den Erstellungsmodus und die Lese-/Schreibberechtigung.Initializes a new instance of the FileStream class with the specified path, creation mode, and read/write permission.

FileStream(String, FileMode, FileAccess, FileShare) FileStream(String, FileMode, FileAccess, FileShare) FileStream(String, FileMode, FileAccess, FileShare) 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.Initializes a new instance of the FileStream class with the specified path, creation mode, read/write permission, and sharing permission.

FileStream(String, FileMode, FileAccess, FileShare, Int32) FileStream(String, FileMode, FileAccess, FileShare, Int32) FileStream(String, FileMode, FileAccess, FileShare, Int32) 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.Initializes a new instance of the FileStream class with the specified path, creation mode, read/write and sharing permission, and buffer size.

FileStream(String, FileMode, FileAccess, FileShare, Int32, Boolean) FileStream(String, FileMode, FileAccess, FileShare, Int32, Boolean) FileStream(String, FileMode, FileAccess, FileShare, Int32, Boolean) 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.Initializes a new instance of the FileStream class with the specified path, creation mode, read/write and sharing permission, buffer size, and synchronous or asynchronous state.

FileStream(String, FileMode, FileAccess, FileShare, Int32, FileOptions) FileStream(String, FileMode, FileAccess, FileShare, Int32, FileOptions) FileStream(String, FileMode, FileAccess, FileShare, Int32, FileOptions) 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.Initializes a new instance of the FileStream class with the specified path, creation mode, read/write and sharing permission, the access other FileStreams can have to the same file, the buffer size, and additional file options.

FileStream(String, FileMode, FileSystemRights, FileShare, Int32, FileOptions) FileStream(String, FileMode, FileSystemRights, FileShare, Int32, FileOptions) FileStream(String, FileMode, FileSystemRights, FileShare, Int32, FileOptions) 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.Initializes a new instance of the FileStream class with the specified path, creation mode, access rights and sharing permission, the buffer size, and additional file options.

FileStream(String, FileMode, FileSystemRights, FileShare, Int32, FileOptions, FileSecurity) FileStream(String, FileMode, FileSystemRights, FileShare, Int32, FileOptions, FileSecurity) FileStream(String, FileMode, FileSystemRights, FileShare, Int32, FileOptions, FileSecurity) 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.Initializes a new instance of the FileStream class with the specified path, creation mode, access rights and sharing permission, the buffer size, additional file options, access control and audit security.

Eigenschaften

CanRead CanRead CanRead CanRead

Ruft einen Wert ab, der angibt, ob der aktuelle Stream Lesevorgänge unterstützt.Gets a value that indicates whether the current stream supports reading.

CanSeek CanSeek CanSeek CanSeek

Ruft einen Wert ab, der angibt, ob der aktuelle Stream Suchvorgänge unterstützt.Gets a value that indicates whether the current stream supports seeking.

CanTimeout CanTimeout CanTimeout CanTimeout

Ruft einen Wert ab, der bestimmt, ob für den aktuellen Stream ein Timeout möglich ist.Gets a value that determines whether the current stream can time out.

(Inherited from Stream)
CanWrite CanWrite CanWrite CanWrite

Ruft einen Wert ab, der angibt, ob der aktuelle Stream Schreibvorgänge unterstützt.Gets a value that indicates whether the current stream supports writing.

Handle Handle Handle Handle

Ruft das Dateihandle des Betriebssystems für die Datei ab, die durch das aktuelle FileStream-Objekt gekapselt wird.Gets the operating system file handle for the file that the current FileStream object encapsulates.

IsAsync IsAsync IsAsync IsAsync

Ruft einen Wert ab, der angibt, ob der FileStream asynchron oder synchron geöffnet wurde.Gets a value that indicates whether the FileStream was opened asynchronously or synchronously.

Length Length Length Length

Ruft die Länge des Streams in Bytes ab.Gets the length in bytes of the stream.

Name Name Name Name

Ruft den absoluten Pfad der Datei auf, die im FileStream geöffnet wurde.Gets the absolute path of the file opened in the FileStream.

Position Position Position Position

Ruft die aktuelle Position dieses Streams ab oder legt diese fest.Gets or sets the current position of this stream.

ReadTimeout ReadTimeout ReadTimeout 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.Gets or sets a value, in milliseconds, that determines how long the stream will attempt to read before timing out.

(Inherited from Stream)
SafeFileHandle SafeFileHandle SafeFileHandle SafeFileHandle

Ruft ein SafeFileHandle-Objekt ab, das das Dateihandle des Betriebssystems für die Datei darstellt, die vom aktuellen FileStream-Objekt gekapselt wird.Gets a SafeFileHandle object that represents the operating system file handle for the file that the current FileStream object encapsulates.

WriteTimeout WriteTimeout WriteTimeout 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.Gets or sets a value, in milliseconds, that determines how long the stream will attempt to write before timing out.

(Inherited from Stream)

Methoden

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

Beginnt einen asynchronen Lesevorgang.Begins an asynchronous read operation. Verwenden Sie stattdessen ReadAsync(Byte[], Int32, Int32, CancellationToken).Consider using ReadAsync(Byte[], Int32, Int32, CancellationToken) instead.

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

Beginnt einen asynchronen Schreibvorgang.Begins an asynchronous write operation. Verwenden Sie stattdessen WriteAsync(Byte[], Int32, Int32, CancellationToken).Consider using WriteAsync(Byte[], Int32, Int32, CancellationToken) instead.

Close() Close() Close() Close()

Schließt den aktuellen Stream und gibt alle dem aktuellen Stream zugeordneten Ressourcen frei (z. B. Sockets und Dateihandles).Closes the current stream and releases any resources (such as sockets and file handles) associated with the current stream.

CopyTo(Stream) CopyTo(Stream) CopyTo(Stream) CopyTo(Stream)

Liest alle Bytes aus dem aktuellen Stream und schreibt sie in einen anderen Datenstrom.Reads the bytes from the current stream and writes them to another stream.

(Inherited from Stream)
CopyTo(Stream, Int32) CopyTo(Stream, Int32) CopyTo(Stream, Int32) CopyTo(Stream, Int32)

Liest alles Bytes aus dem aktuellen Datenstrom und schreibt sie unter Verwendung einer angegebenen Puffergröße in einen anderen Datenstrom.Reads the bytes from the current stream and writes them to another stream, using a specified buffer size.

(Inherited from Stream)
CopyToAsync(Stream) CopyToAsync(Stream) CopyToAsync(Stream) CopyToAsync(Stream)

Liest die Bytes asynchron aus dem aktuellen Stream und schreibt sie in einen anderen Stream.Asynchronously reads the bytes from the current stream and writes them to another stream.

(Inherited from Stream)
CopyToAsync(Stream, CancellationToken) CopyToAsync(Stream, CancellationToken) CopyToAsync(Stream, CancellationToken) CopyToAsync(Stream, CancellationToken)

Liest die Bytes asynchron aus dem aktuellen Stream und schreibt sie unter Verwendung eines angegebenen Abbruchtokens in einen anderen Stream.Asynchronously reads the bytes from the current stream and writes them to another stream, using a specified cancellation token.

(Inherited from Stream)
CopyToAsync(Stream, Int32) CopyToAsync(Stream, Int32) CopyToAsync(Stream, Int32) CopyToAsync(Stream, Int32)

Liest die Bytes asynchron aus dem aktuellen Stream und schreibt sie unter Verwendung einer angegebenen Puffergröße in einen anderen Stream.Asynchronously reads the bytes from the current stream and writes them to another stream, using a specified buffer size.

(Inherited from Stream)
CopyToAsync(Stream, Int32, CancellationToken) CopyToAsync(Stream, Int32, CancellationToken) CopyToAsync(Stream, Int32, CancellationToken) 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.Asynchronously reads the bytes from the current file stream and writes them to another stream, using a specified buffer size and cancellation token.

CreateObjRef(Type) CreateObjRef(Type) CreateObjRef(Type) CreateObjRef(Type)

Erstellt ein Objekt mit allen relevanten Informationen, die zum Generieren eines Proxys für die Kommunikation mit einem Remoteobjekt erforderlich sind.Creates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object.

(Inherited from MarshalByRefObject)
CreateWaitHandle() CreateWaitHandle() CreateWaitHandle() CreateWaitHandle()

Reserviert ein WaitHandle-Objekt.Allocates a WaitHandle object.

(Inherited from Stream)
Dispose() Dispose() Dispose() Dispose()

Gibt alle vom Stream verwendeten Ressourcen frei.Releases all resources used by the Stream.

(Inherited from Stream)
Dispose(Boolean) Dispose(Boolean) Dispose(Boolean) Dispose(Boolean)

Gibt die von FileStream verwendeten nicht verwalteten Ressourcen und optional die verwalteten Ressourcen frei.Releases the unmanaged resources used by the FileStream and optionally releases the managed resources.

DisposeAsync() DisposeAsync() DisposeAsync() DisposeAsync()

Gibt die nicht verwalteten Ressourcen, die von der FileStream verwendet werden, asynchron frei.Asynchronously releases the unmanaged resources used by the FileStream.

EndRead(IAsyncResult) EndRead(IAsyncResult) EndRead(IAsyncResult) EndRead(IAsyncResult)

Wartet, bis der ausstehende asynchrone Lesevorgang abgeschlossen ist.Waits for the pending asynchronous read operation to complete. (Verwenden Sie stattdessen ReadAsync(Byte[], Int32, Int32, CancellationToken).)(Consider using ReadAsync(Byte[], Int32, Int32, CancellationToken) instead.)

EndWrite(IAsyncResult) EndWrite(IAsyncResult) EndWrite(IAsyncResult) EndWrite(IAsyncResult)

Beendet einen asynchronen Schreibvorgang und blockiert, bis die E/A-Operation abgeschlossen wurde.Ends an asynchronous write operation and blocks until the I/O operation is complete. (Verwenden Sie stattdessen WriteAsync(Byte[], Int32, Int32, CancellationToken).)(Consider using WriteAsync(Byte[], Int32, Int32, CancellationToken) instead.)

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Bestimmt, ob das angegebene Objekt mit dem aktuellen Objekt identisch ist.Determines whether the specified object is equal to the current object.

(Inherited from Object)
Finalize() Finalize() Finalize() Finalize()

Stellt das Freigeben von Ressourcen und das Ausführen anderer Bereinigungsvorgänge sicher, wenn der Garbage Collector den FileStream verarbeitet.Ensures that resources are freed and other cleanup operations are performed when the garbage collector reclaims the FileStream.

Flush() Flush() Flush() Flush()

Löscht die Puffer für diesen Datenstrom und veranlasst die Ausgabe aller gepufferten Daten in die Datei.Clears buffers for this stream and causes any buffered data to be written to the file.

Flush(Boolean) Flush(Boolean) Flush(Boolean) 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.Clears buffers for this stream and causes any buffered data to be written to the file, and also clears all intermediate file buffers.

FlushAsync() FlushAsync() FlushAsync() FlushAsync()

Löscht sämtliche Puffer für diesen Stream asynchron und veranlasst die Ausgabe aller gepufferten Daten an das zugrunde liegende Gerät.Asynchronously clears all buffers for this stream and causes any buffered data to be written to the underlying device.

(Inherited from Stream)
FlushAsync(CancellationToken) FlushAsync(CancellationToken) FlushAsync(CancellationToken) 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.Asynchronously clears all buffers for this stream, causes any buffered data to be written to the underlying device, and monitors cancellation requests.

GetAccessControl() GetAccessControl() GetAccessControl() 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.Gets a FileSecurity object that encapsulates the access control list (ACL) entries for the file described by the current FileStream object.

GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Fungiert als Standardhashfunktion.Serves as the default hash function.

(Inherited from Object)
GetLifetimeService() GetLifetimeService() GetLifetimeService() GetLifetimeService()

Ruft das aktuelle Lebensdauerdienstobjekt ab, das die Lebensdauerrichtlinien für diese Instanz steuert.Retrieves the current lifetime service object that controls the lifetime policy for this instance.

(Inherited from MarshalByRefObject)
GetType() GetType() GetType() GetType()

Ruft den Type der aktuellen Instanz ab.Gets the Type of the current instance.

(Inherited from Object)
InitializeLifetimeService() InitializeLifetimeService() InitializeLifetimeService() InitializeLifetimeService()

Ruft ein Lebensdauerdienstobjekt zur Steuerung der Lebensdauerrichtlinie für diese Instanz ab.Obtains a lifetime service object to control the lifetime policy for this instance.

(Inherited from MarshalByRefObject)
Lock(Int64, Int64) Lock(Int64, Int64) Lock(Int64, Int64) Lock(Int64, Int64)

Verhindert, dass andere Prozesse im FileStream lesen oder schreiben.Prevents other processes from reading from or writing to the FileStream.

MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.Creates a shallow copy of the current Object.

(Inherited from Object)
MemberwiseClone(Boolean) MemberwiseClone(Boolean) MemberwiseClone(Boolean) MemberwiseClone(Boolean)

Erstellt eine flache Kopie des aktuellen MarshalByRefObject-Objekts.Creates a shallow copy of the current MarshalByRefObject object.

(Inherited from MarshalByRefObject)
ObjectInvariant() ObjectInvariant() ObjectInvariant() ObjectInvariant()

Bietet Unterstützung für einen Contract.Provides support for a Contract.

(Inherited from Stream)
Read(Byte[], Int32, Int32) Read(Byte[], Int32, Int32) Read(Byte[], Int32, Int32) Read(Byte[], Int32, Int32)

Liest einen Byteblock aus dem Stream und schreibt die Daten in einen angegebenen Puffer.Reads a block of bytes from the stream and writes the data in a given buffer.

Read(Span<Byte>) Read(Span<Byte>) Read(Span<Byte>) 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.Reads a sequence of bytes from the current file stream and advances the position within the file stream by the number of bytes read.

ReadAsync(Byte[], Int32, Int32) ReadAsync(Byte[], Int32, Int32) ReadAsync(Byte[], Int32, Int32) 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.Asynchronously reads a sequence of bytes from the current stream and advances the position within the stream by the number of bytes read.

(Inherited from Stream)
ReadAsync(Byte[], Int32, Int32, CancellationToken) ReadAsync(Byte[], Int32, Int32, CancellationToken) ReadAsync(Byte[], Int32, Int32, CancellationToken) 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.Asynchronously reads a sequence of bytes from the current file stream and writes them to a byte array beginning at a specified offset, advances the position within the file stream by the number of bytes read, and monitors cancellation requests.

ReadAsync(Memory<Byte>, CancellationToken) ReadAsync(Memory<Byte>, CancellationToken) ReadAsync(Memory<Byte>, CancellationToken) 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.Asynchronously reads a sequence of bytes from the current file stream and writes them to a memory region, advances the position within the file stream by the number of bytes read, and monitors cancellation requests.

ReadByte() ReadByte() ReadByte() ReadByte()

Liest ein Byte aus der Datei und erhöht die Leseposition um ein Byte.Reads a byte from the file and advances the read position one byte.

Seek(Int64, SeekOrigin) Seek(Int64, SeekOrigin) Seek(Int64, SeekOrigin) Seek(Int64, SeekOrigin)

Legt die aktuelle Position dieses Streams auf den angegebenen Wert fest.Sets the current position of this stream to the given value.

SetAccessControl(FileSecurity) SetAccessControl(FileSecurity) SetAccessControl(FileSecurity) SetAccessControl(FileSecurity)

Wendet von einem FileSecurity-Objekt beschriebene Einträge in Zugriffssteuerungslisten auf die Datei an, die vom aktuellen FileStream-Objekt beschrieben wird.Applies access control list (ACL) entries described by a FileSecurity object to the file described by the current FileStream object.

SetLength(Int64) SetLength(Int64) SetLength(Int64) SetLength(Int64)

Legt die Länge dieses Streams auf den angegebenen Wert fest.Sets the length of this stream to the given value.

ToString() ToString() ToString() ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.Returns a string that represents the current object.

(Inherited from Object)
Unlock(Int64, Int64) Unlock(Int64, Int64) Unlock(Int64, Int64) Unlock(Int64, Int64)

Ermöglicht anderen Prozessen den Zugriff auf die gesamte Datei oder einen Teil der Datei, die zuvor gesperrt war.Allows access by other processes to all or part of a file that was previously locked.

Write(Byte[], Int32, Int32) Write(Byte[], Int32, Int32) Write(Byte[], Int32, Int32) Write(Byte[], Int32, Int32)

Schreibt einen Block von Bytes in den Dateistream.Writes a block of bytes to the file stream.

Write(ReadOnlySpan<Byte>) Write(ReadOnlySpan<Byte>) Write(ReadOnlySpan<Byte>) 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.Writes a sequence of bytes from a read-only span to the current file stream and advances the current position within this file stream by the number of bytes written.

WriteAsync(Byte[], Int32, Int32) WriteAsync(Byte[], Int32, Int32) WriteAsync(Byte[], Int32, Int32) 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.Asynchronously writes a sequence of bytes to the current stream and advances the current position within this stream by the number of bytes written.

(Inherited from Stream)
WriteAsync(Byte[], Int32, Int32, CancellationToken) WriteAsync(Byte[], Int32, Int32, CancellationToken) WriteAsync(Byte[], Int32, Int32, CancellationToken) 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.Asynchronously writes a sequence of bytes to the current stream, advances the current position within this stream by the number of bytes written, and monitors cancellation requests.

WriteAsync(ReadOnlyMemory<Byte>, CancellationToken) WriteAsync(ReadOnlyMemory<Byte>, CancellationToken) WriteAsync(ReadOnlyMemory<Byte>, CancellationToken) 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.Asynchronously writes a sequence of bytes from a memory region to the current file stream, advances the current position within this file stream by the number of bytes written, and monitors cancellation requests.

WriteByte(Byte) WriteByte(Byte) WriteByte(Byte) WriteByte(Byte)

Schreibt ein Byte an die aktuelle Position im Dateistream.Writes a byte to the current position in the file stream.

Explizite Schnittstellenimplementierungen

IDisposable.Dispose() IDisposable.Dispose() IDisposable.Dispose() IDisposable.Dispose()

Gibt alle vom Stream verwendeten Ressourcen frei.Releases all resources used by the Stream.

(Inherited from Stream)

Erweiterungsmethoden

GetAccessControl(FileStream) GetAccessControl(FileStream) GetAccessControl(FileStream) GetAccessControl(FileStream)
SetAccessControl(FileStream, FileSecurity) SetAccessControl(FileStream, FileSecurity) SetAccessControl(FileStream, FileSecurity) SetAccessControl(FileStream, FileSecurity)
AsInputStream(Stream) AsInputStream(Stream) AsInputStream(Stream) AsInputStream(Stream)

Konvertiert einen verwalteten Stream in .NET für Microsoft Store-Apps in einen Eingabestream in der Windows-Runtime.Converts a managed stream in the .NET for Windows Store apps to an input stream in the Windows Runtime.

AsOutputStream(Stream) AsOutputStream(Stream) AsOutputStream(Stream) AsOutputStream(Stream)

Konvertiert einen verwalteten Stream in .NET für Microsoft Store-Apps in einen Ausgabestream in der Windows-Runtime.Converts a managed stream in the .NET for Windows Store apps to an output stream in the Windows Runtime.

AsRandomAccessStream(Stream) AsRandomAccessStream(Stream) AsRandomAccessStream(Stream) AsRandomAccessStream(Stream)

Konvertiert den angegebenen Stream in einen Random-Access-Stream.Converts the specified stream to a random access stream.

Gilt für:

Siehe auch