FileStream Clase

Definición

Proporciona un Stream para un archivo, lo que permite operaciones de lectura y escritura sincrónica y asincrónica.

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
Herencia
FileStream
Herencia
Derivado
Atributos

Ejemplos

En el ejemplo siguiente se muestran algunos de los FileStream constructores.

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

En el ejemplo siguiente se muestra cómo escribir en un archivo de forma asincrónica. Este código se ejecuta en una aplicación WPF que tiene un TextBlock denominado UserInput y un botón conectado a un controlador de eventos Click denominado Button_Click. La ruta de acceso del archivo debe cambiarse a un archivo que existe en el equipo.

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

Comentarios

Use la FileStream clase para leer, escribir en, abrir y cerrar archivos en un sistema de archivos, y para manipular otros identificadores de sistema operativo relacionados con archivos, incluidas las canalizaciones, la entrada estándar y la salida estándar. Puede usar los Readmétodos , Write, CopyTo, y Flush para realizar operaciones sincrónicas, o los ReadAsyncmétodos , WriteAsync, CopyToAsyncy FlushAsync para realizar operaciones asincrónicas. Use los métodos asincrónicos para realizar operaciones de archivos que consumen muchos recursos sin bloquear el subproceso principal. Esta consideración de rendimiento es especialmente importante en una aplicación de la Tienda Windows 8.x o una aplicación de escritorio en que una operación de streaming prolongada puede bloquear el subproceso de interfaz de usuario y hacer que parezca que una aplicación ha dejado de responder. FileStream almacena en búferes la entrada y la salida para mejorar el rendimiento.

Importante

Este tipo implementa la interfaz IDisposable. Cuando haya terminado de utilizar el tipo, debe desecharlo directa o indirectamente. Para eliminar el tipo directamente, llame a su método Dispose en un bloque try/catch. Para deshacerse de él indirectamente, use una construcción de lenguaje como using (en C#) o Using (en Visual Basic). Para más información, vea la sección "Uso de objetos que implementan IDisposable" en el tema de la interfaz IDisposable.

La IsAsync propiedad detecta si el identificador de archivo se abrió de forma asincrónica. Especifique este valor al crear una instancia de la FileStream clase mediante un constructor que tenga un isAsyncparámetro , useAsynco options . Cuando la propiedad es true, la secuencia utiliza E/S superpuesta para realizar operaciones de archivo de forma asincrónica. Sin embargo, la IsAsync propiedad no tiene que ser true para llamar ReadAsyncal método , WriteAsynco CopyToAsync . Cuando la IsAsync propiedad es false y llama a las operaciones asincrónicas de lectura y escritura, el subproceso de la interfaz de usuario todavía no se bloquea, pero la operación de E/S real se realiza de forma sincrónica.

El Seek método admite el acceso aleatorio a los archivos. Seek permite mover la posición de lectura y escritura a cualquier posición dentro del archivo. Esto se hace con parámetros de punto de referencia de desplazamiento de bytes. El desplazamiento de bytes es relativo al punto de referencia de búsqueda, que puede ser el principio, la posición actual o el final del archivo subyacente, tal y como representan los tres miembros de la SeekOrigin enumeración.

Nota

Los archivos de disco siempre admiten el acceso aleatorio. En el momento de la construcción, el valor de la CanSeek propiedad se establece true en o false en función del tipo de archivo subyacente. Si el tipo de archivo subyacente es FILE_TYPE_DISK, como se define en winbase.h, el valor de la CanSeek propiedad es true. De lo contrario, el valor de la CanSeek propiedad es false.

Si un proceso finaliza con parte de un archivo bloqueado o cierra un archivo que tiene bloqueos pendientes, el comportamiento no está definido.

Para las operaciones de directorio y otras operaciones de archivo, vea las Fileclases , Directoryy Path . La File clase es una clase de utilidad que tiene métodos estáticos principalmente para la creación de objetos basados en rutas de FileStream acceso de archivo. La MemoryStream clase crea una secuencia a partir de una matriz de bytes y es similar a la FileStream clase .

Para obtener una lista de las operaciones comunes de archivos y directorios, consulte Tareas comunes de E/S.

Detección de cambios de posición de flujo

Cuando un FileStream objeto no tiene una suspensión exclusiva en su identificador, otro subproceso podría tener acceso al identificador de archivo simultáneamente y cambiar la posición del puntero de archivo del sistema operativo asociado al identificador de archivo. En este caso, la posición almacenada en caché en el FileStream objeto y los datos almacenados en caché en el búfer podrían estar en peligro. El FileStream objeto realiza de forma rutinaria comprobaciones en métodos que acceden al búfer almacenado en caché para asegurarse de que la posición de identificador del sistema operativo sea la misma que la posición almacenada en caché utilizada por el FileStream objeto.

Si se detecta un cambio inesperado en la posición de identificador en una llamada al método , .NET Framework descarta el contenido del búfer y vuelve a Read leer la secuencia del archivo. Esto puede afectar al rendimiento, en función del tamaño del archivo y de cualquier otro proceso que pueda afectar a la posición de la secuencia de archivos.

Si se detecta un cambio inesperado en la posición de identificador en una llamada al Write método , se descarta el contenido del búfer y se produce una IOException excepción.

Un FileStream objeto no tendrá una suspensión exclusiva en su identificador cuando se tenga acceso a la SafeFileHandle propiedad para exponer el identificador o al FileStream objeto se le asigna la SafeFileHandle propiedad en su constructor.

Constructores

FileStream(IntPtr, FileAccess)
Obsoleto.
Obsoleto.
Obsoleto.
Obsoleto.

Inicializa una nueva instancia de la clase FileStream para el identificador de archivo especificado, con el permiso de lectura y escritura especificado.

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

Inicializa una nueva instancia de la clase FileStream para el identificador de archivo especificado, con el permiso de lectura y escritura establecido y la propiedad de la instancia de FileStream.

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

Inicializa una nueva instancia de la clase FileStream para el identificador de archivo especificado, con el tamaño de búfer, la propiedad de la instancia de FileStream y el permiso de lectura y escritura especificados.

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

Inicializa una nueva instancia de la clase FileStream para el identificador de archivo especificado, con el estado sincrónico o asincrónico, el tamaño de búfer, la propiedad de la instancia de FileStream y el permiso de lectura y escritura especificados.

FileStream(SafeFileHandle, FileAccess)

Inicializa una nueva instancia de la clase FileStream para el identificador de archivo especificado, con el permiso de lectura y escritura especificado.

FileStream(SafeFileHandle, FileAccess, Int32)

Inicializa una nueva instancia de la clase FileStream para el identificador de archivo especificado, con el tamaño de búfer y el permiso de lectura y escritura especificados.

FileStream(SafeFileHandle, FileAccess, Int32, Boolean)

Inicializa una nueva instancia de la clase FileStream para el identificador de archivo especificado, y con el permiso de lectura y escritura, el tamaño de búfer y el estado sincrónico o asincrónico especificados.

FileStream(String, FileMode)

Inicializa una nueva instancia de la clase FileStream con el modo de creación y la ruta de acceso especificados.

FileStream(String, FileMode, FileAccess)

Inicializa una nueva instancia de la clase FileStream con el permiso de lectura y escritura, el modo de creación y la ruta de acceso especificados.

FileStream(String, FileMode, FileAccess, FileShare)

Inicializa una nueva instancia de la clase FileStream con el permiso de uso compartido, el permiso de lectura y escritura, el modo de creación y la ruta de acceso especificados.

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

Inicializa una nueva instancia de la clase FileStream con el tamaño de búfer, el permiso de lectura y escritura y de uso compartido, el modo de creación y la ruta de acceso especificados.

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

Inicializa una nueva instancia de la clase FileStream con el estado sincrónico o asincrónico, el tamaño de búfer, el permiso de lectura y escritura y de uso compartido, el modo de creación y la ruta de acceso especificados.

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

Inicializa una nueva instancia de la clase FileStream con la ruta de acceso, el modo de creación, los permisos de lectura y escritura y de uso compartido, el acceso que otras secuencias de archivos pueden tener al mismo archivo, el tamaño del búfer y otras opciones de archivo que se hayan especificado.

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

Inicializa una nueva instancia de la clase FileStream con la ruta de acceso, el modo de creación, los derechos de acceso y el permiso de uso compartido, el tamaño de búfer y opciones de archivo adicionales que se hayan especificado.

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

Inicializa una nueva instancia de la clase FileStream con la ruta de acceso, el modo de creación, los derechos de acceso y el permiso de uso compartido, el tamaño de búfer, las opciones de archivo adicionales, el control de acceso y la seguridad de auditoría que se hayan especificado.

FileStream(String, FileStreamOptions)

Inicializa una nueva instancia de la FileStream clase con la ruta de acceso, el modo de creación, el permiso de lectura y escritura y uso compartido, el tamaño del búfer, las opciones de archivo adicionales, el tamaño de la asignación previa y el acceso que otros FileStreams pueden tener en el mismo archivo.

Propiedades

CanRead

Obtiene un valor que indica si la secuencia actual admite lectura.

CanSeek

Obtiene un valor que indica si la secuencia actual admite búsquedas.

CanTimeout

Obtiene un valor que determina si se puede agotar el tiempo de espera de la secuencia actual.

(Heredado de Stream)
CanWrite

Obtiene un valor que indica si la secuencia actual admite escritura.

Handle
Obsoleto.
Obsoleto.
Obsoleto.
Obsoleto.

Obtiene el identificador de archivo del sistema operativo correspondiente al archivo que el objeto FileStream encapsula.

IsAsync

Obtiene un valor que indica si se ha abierto FileStream de forma sincrónica o asincrónica.

Length

Devuelve la longitud en bytes del flujo.

Name

Obtiene la ruta de acceso absoluta del archivo abierto en FileStream.

Position

Obtiene o establece la posición actual de esta secuencia.

ReadTimeout

Obtiene o establece un valor, en milisegundos, que determina durante cuánto tiempo la secuencia intentará realizar operaciones de lectura antes de que se agote el tiempo de espera.

(Heredado de Stream)
SafeFileHandle

Obtiene un objeto SafeFileHandle que representa el identificador de archivos del sistema operativo correspondiente al archivo que el objeto FileStream actual encapsula.

WriteTimeout

Obtiene o establece un valor, en milisegundos, que determina durante cuánto tiempo la secuencia intentará realizar operaciones de escritura antes de que se agote el tiempo de espera.

(Heredado de Stream)

Métodos

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

Comienza una operación de lectura asincrónica. Considere usar ReadAsync(Byte[], Int32, Int32, CancellationToken) en su lugar.

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

Comienza una operación de lectura asincrónica. (Considere usar ReadAsync(Byte[], Int32, Int32) en su lugar).

(Heredado de Stream)
BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object)

Comienza una operación de escritura asincrónica. Considere usar WriteAsync(Byte[], Int32, Int32, CancellationToken) en su lugar.

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

Comienza una operación de escritura asincrónica. (Considere usar WriteAsync(Byte[], Int32, Int32) en su lugar).

(Heredado de Stream)
Close()

Cierra la secuencia actual y libera todos los recursos (como sockets e identificadores de archivo) asociados a esta.

Close()

Cierra la secuencia actual y libera todos los recursos (como sockets e identificadores de archivo) asociados a esta. En lugar de llamar a este método, asegúrese de que la secuencia se desecha correctamente.

(Heredado de Stream)
CopyTo(Stream)

Lee los bytes de la secuencia actual y los escribe en otra secuencia de destino. Ambas posiciones de secuencias están avanzadas por el número de bytes copiados.

(Heredado de Stream)
CopyTo(Stream, Int32)

Lee todos los bytes de la secuencia actual y los escribe en otra secuencia, usando el tamaño de búfer especificado. Ambas posiciones de secuencias están avanzadas por el número de bytes copiados.

(Heredado de Stream)
CopyToAsync(Stream)

Lee asincrónicamente los bytes de la secuencia actual y los escribe en otra secuencia. Ambas posiciones de secuencias están avanzadas por el número de bytes copiados.

(Heredado de Stream)
CopyToAsync(Stream, CancellationToken)

Lee de forma asincrónica los bytes de la secuencia actual y los escribe en otra secuencia mediante un token de cancelación especificado. Ambas posiciones de secuencias están avanzadas por el número de bytes copiados.

(Heredado de Stream)
CopyToAsync(Stream, Int32)

Lee asincrónicamente los bytes de la secuencia actual y los escribe en otra secuencia, usando el tamaño de búfer especificado. Ambas posiciones de secuencias están avanzadas por el número de bytes copiados.

(Heredado de Stream)
CopyToAsync(Stream, Int32, CancellationToken)

Lee de forma asincrónica los bytes de la secuencia de archivo actual y los escribe en otra secuencia, utilizando el tamaño de búfer y el token de cancelación especificados.

CopyToAsync(Stream, Int32, CancellationToken)

Lee asincrónicamente los bytes de la secuencia actual y los escribe en otra secuencia, utilizando el tamaño de búfer y el token de cancelación especificados. Ambas posiciones de secuencias están avanzadas por el número de bytes copiados.

(Heredado de Stream)
CreateObjRef(Type)

Crea un objeto que contiene toda la información relevante necesaria para generar un proxy utilizado para comunicarse con un objeto remoto.

(Heredado de MarshalByRefObject)
CreateWaitHandle()
Obsoleto.
Obsoleto.
Obsoleto.

Asigna un objeto WaitHandle.

(Heredado de Stream)
Dispose()

Libera todos los recursos que usa Stream.

(Heredado de Stream)
Dispose(Boolean)

Libera los recursos no administrados que usa FileStream y, de forma opcional, libera los recursos administrados.

DisposeAsync()

Libera de forma asincrónica los recursos no administrados usados por FileStream.

DisposeAsync()

Libera de forma asincrónica los recursos no administrados usados por Stream.

(Heredado de Stream)
EndRead(IAsyncResult)

Espera a que se complete la operación asincrónica de lectura que se encuentra pendiente. (Considere usar ReadAsync(Byte[], Int32, Int32, CancellationToken) en su lugar).

EndRead(IAsyncResult)

Espera a que se complete la lectura asincrónica que se encuentra pendiente. (Considere usar ReadAsync(Byte[], Int32, Int32) en su lugar).

(Heredado de Stream)
EndWrite(IAsyncResult)

Termina una operación de escritura asincrónica y se bloquea hasta que se completa la operación de E/S. (Considere usar WriteAsync(Byte[], Int32, Int32, CancellationToken) en su lugar).

EndWrite(IAsyncResult)

Finaliza una operación de escritura asincrónica. (Considere usar WriteAsync(Byte[], Int32, Int32) en su lugar).

(Heredado de Stream)
Equals(Object)

Determina si el objeto especificado es igual que el objeto actual.

(Heredado de Object)
Finalize()

Garantiza que se liberen los recursos y se realicen otras operaciones de limpieza cuando el recolector de elementos no utilizados reclama FileStream.

Flush()

Borra los búferes de esta secuencia y hace que todos los datos almacenados en los búferes se escriban en el archivo.

Flush(Boolean)

Borra los búferes de esta secuencia, hace que todos los datos almacenados en los búferes se escriban en el archivo y borra también todos los búferes de archivos intermedios.

FlushAsync()

Borra asincrónicamente todos los búferes de esta secuencia y hace que los datos almacenados en búfer se escriban en el dispositivo subyacente.

(Heredado de Stream)
FlushAsync(CancellationToken)

Borra asincrónicamente todos los búferes de esta secuencia, y hace que todos los datos almacenados en búfer se escriban en el dispositivo subyacente y supervisa las solicitudes de cancelación.

FlushAsync(CancellationToken)

Borra asincrónicamente todos los búferes de esta secuencia, y hace que todos los datos almacenados en búfer se escriban en el dispositivo subyacente y supervisa las solicitudes de cancelación.

(Heredado de Stream)
GetAccessControl()

Obtiene un objeto FileSecurity que encapsula las entradas de lista de control de acceso (ACL) del archivo descrito por el objeto FileStream actual.

GetHashCode()

Sirve como la función hash predeterminada.

(Heredado de Object)
GetLifetimeService()
Obsoleto.

Recupera el objeto de servicio de duración actual que controla la directiva de duración de esta instancia.

(Heredado de MarshalByRefObject)
GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
InitializeLifetimeService()
Obsoleto.

Obtiene un objeto de servicio de duración para controlar la directiva de duración de esta instancia.

(Heredado de MarshalByRefObject)
Lock(Int64, Int64)

Impide que otros procesos lean de FileStream o escriban en él.

MemberwiseClone()

Crea una copia superficial del Object actual.

(Heredado de Object)
MemberwiseClone(Boolean)

Crea una copia superficial del objeto MarshalByRefObject actual.

(Heredado de MarshalByRefObject)
ObjectInvariant()
Obsoleto.

Proporciona compatibilidad con una clase Contract.

(Heredado de Stream)
Read(Byte[], Int32, Int32)

Lee un bloque de bytes de la secuencia y escribe los datos en un búfer dado.

Read(Span<Byte>)

Lee una secuencia de bytes de la secuencia de archivo actual y avanza la posición en esta secuencia de archivo según el número de bytes leídos.

Read(Span<Byte>)

Cuando se reemplaza en una clase derivada, se lee una secuencia de bytes en la secuencia actual y se hace avanzar la posición dentro de la secuencia el número de bytes leídos.

(Heredado de Stream)
ReadAsync(Byte[], Int32, Int32)

Lee asincrónicamente una secuencia de bytes de la secuencia actual y avanza la posición en esta secuencia según el número de bytes leídos.

(Heredado de Stream)
ReadAsync(Byte[], Int32, Int32, CancellationToken)

Lee de forma asincrónica una secuencia de bytes desde la secuencia de archivo actual y los escribe en una matriz de bytes a partir de una posición especificada, avanza la posición en la secuencia de archivo según el número de bytes leídos y supervisa las solicitudes de cancelación.

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

Lee de forma asincrónica una secuencia de bytes en la secuencia actual, se hace avanzar la posición dentro de la secuencia el número de bytes leídos y controla las solicitudes de cancelación.

(Heredado de Stream)
ReadAsync(Memory<Byte>, CancellationToken)

Lee de forma asincrónica una secuencia de bytes en la secuencia de archivo actual y los escribe en una región de memoria, avanza la posición dentro de la secuencia de archivo según el número de bytes leídos y supervisa las solicitudes de cancelación.

ReadAsync(Memory<Byte>, CancellationToken)

Lee de forma asincrónica una secuencia de bytes en la secuencia actual, se hace avanzar la posición dentro de la secuencia el número de bytes leídos y controla las solicitudes de cancelación.

(Heredado de Stream)
ReadAtLeast(Span<Byte>, Int32, Boolean)

Lee al menos un número mínimo de bytes de la secuencia actual y avanza la posición dentro de la secuencia por el número de bytes leídos.

(Heredado de Stream)
ReadAtLeastAsync(Memory<Byte>, Int32, Boolean, CancellationToken)

Lee de forma asincrónica al menos un número mínimo de bytes de la secuencia actual, avanza la posición dentro de la secuencia por el número de bytes leídos y supervisa las solicitudes de cancelación.

(Heredado de Stream)
ReadByte()

Lee un byte del archivo y avanza la posición de lectura un byte.

ReadExactly(Byte[], Int32, Int32)

count Lee el número de bytes de la secuencia actual y avanza la posición dentro de la secuencia.

(Heredado de Stream)
ReadExactly(Span<Byte>)

Lee bytes de la secuencia actual y avanza la posición dentro de la secuencia hasta buffer que se rellena .

(Heredado de Stream)
ReadExactlyAsync(Byte[], Int32, Int32, CancellationToken)

Lee count de forma asincrónica el número de bytes de la secuencia actual, avanza la posición dentro de la secuencia y supervisa las solicitudes de cancelación.

(Heredado de Stream)
ReadExactlyAsync(Memory<Byte>, CancellationToken)

Lee de forma asincrónica los bytes de la secuencia actual, avanza la posición dentro de la secuencia hasta buffer que se rellena y supervisa las solicitudes de cancelación.

(Heredado de Stream)
Seek(Int64, SeekOrigin)

Establece la posición actual de esta secuencia actual en el valor dado.

SetAccessControl(FileSecurity)

Aplica las entradas de la lista de control de acceso (ACL) descritas por un objeto FileSecurity al archivo descrito por el objeto FileStream actual.

SetLength(Int64)

Establece la longitud de esta secuencia en el valor dado.

ToString()

Devuelve una cadena que representa el objeto actual.

(Heredado de Object)
Unlock(Int64, Int64)

Permite que otros procesos tengan acceso total o parcial a un archivo previamente bloqueado.

Write(Byte[], Int32, Int32)

Escribe un bloque de bytes en la secuencia de archivo.

Write(ReadOnlySpan<Byte>)

Escribe una secuencia de bytes en un intervalo de solo lectura en la secuencia de archivo actual y avanza la posición actual en esta secuencia de archivo según el número de bytes escritos.

Write(ReadOnlySpan<Byte>)

Cuando se reemplaza en una clase derivada, se escribe una secuencia de bytes en la secuencia actual y se hace avanzar la posición actual dentro de la secuencia el número de bytes escritos.

(Heredado de Stream)
WriteAsync(Byte[], Int32, Int32)

Escribe asincrónicamente una secuencia de bytes en la secuencia actual y avanza la posición actual en esta secuencia según el número de bytes escritos.

(Heredado de Stream)
WriteAsync(Byte[], Int32, Int32, CancellationToken)

Escribe de forma asincrónica una secuencia de bytes en la secuencia actual, se hace avanzar la posición actual dentro de la secuencia el número de bytes escritos y controla las solicitudes de cancelación.

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

Escribe de forma asincrónica una secuencia de bytes en la secuencia actual, se hace avanzar la posición actual dentro de la secuencia el número de bytes escritos y controla las solicitudes de cancelación.

(Heredado de Stream)
WriteAsync(ReadOnlyMemory<Byte>, CancellationToken)

Escribe de forma asincrónica una secuencia de bytes de una región de memoria en la secuencia de archivo actual, avanza la posición actual en esta secuencia de archivo según el número de bytes escritos y supervisa las solicitudes de cancelación.

WriteAsync(ReadOnlyMemory<Byte>, CancellationToken)

Escribe de forma asincrónica una secuencia de bytes en la secuencia actual, se hace avanzar la posición actual dentro de la secuencia el número de bytes escritos y controla las solicitudes de cancelación.

(Heredado de Stream)
WriteByte(Byte)

Escribe un byte en la posición actual de la secuencia de archivo.

Implementaciones de interfaz explícitas

IDisposable.Dispose()

Libera todos los recursos que usa Stream.

(Heredado de Stream)

Métodos de extensión

GetAccessControl(FileStream)

Devuelve la información de seguridad de un archivo.

SetAccessControl(FileStream, FileSecurity)

Cambia los atributos de seguridad de un archivo existente.

AsInputStream(Stream)

Convierte un flujo administrado de .NET para aplicaciones de Microsoft Store en un flujo de entrada de Windows Runtime.

AsOutputStream(Stream)

Convierte un flujo administrado de .NET para aplicaciones de Microsoft Store en un flujo de salida de Windows Runtime.

AsRandomAccessStream(Stream)

Convierte la secuencia especificada en una secuencia de acceso aleatorio.

ConfigureAwait(IAsyncDisposable, Boolean)

Configura la forma en la que se realizan las expresiones await en las tareas devueltas desde un elemento asincrónico descartable.

Se aplica a

Consulte también