StreamReader Clase
Este artículo se tradujo automáticamente. Para ver el artículo en inglés, active la casilla Inglés. Además, puede mostrar el texto en inglés en una ventana emergente si mueve el puntero del mouse sobre el texto.
Traducción
Inglés

StreamReader (Clase)

 

Implementa un TextReader que lee los caracteres de una secuencia de bytes en una codificación determinada.

Para examinar el código fuente de .NET Framework para este tipo, vea la Reference Source.

Espacio de nombres:   System.IO
Ensamblado:  mscorlib (en mscorlib.dll)

System.Object
  System.MarshalByRefObject
    System.IO.TextReader
      System.IO.StreamReader

[SerializableAttribute]
[ComVisibleAttribute(true)]
public class StreamReader : TextReader

NombreDescripción
System_CAPS_pubmethodStreamReader(Stream)

Inicializa una nueva instancia de la clase StreamReader para el flujo especificado.

System_CAPS_pubmethodStreamReader(Stream, Boolean)

Inicializa una nueva instancia de la clase StreamReader para la secuencia especificada, con la opción especificada de detección de marcas de orden de bytes.

System_CAPS_pubmethodStreamReader(Stream, Encoding)

Inicializa una nueva instancia de la clase StreamReader para la secuencia especificada y con la codificación de caracteres indicada.

System_CAPS_pubmethodStreamReader(Stream, Encoding, Boolean)

Inicializa una nueva instancia de la clase StreamReader de la secuencia especificada, con la codificación de caracteres especificada y la opción especificada de detección de marcas de orden de bytes.

System_CAPS_pubmethodStreamReader(Stream, Encoding, Boolean, Int32)

Inicializa una nueva instancia de la clase StreamReader de la secuencia especificada, con la codificación de caracteres especificada, la opción especificada de detección de marcas de orden de bytes y el tamaño del búfer.

System_CAPS_pubmethodStreamReader(Stream, Encoding, Boolean, Int32, Boolean)

Inicializa una nueva instancia de la clase StreamReader de la secuencia especificada basada en la codificación de caracteres especificada, la opción especificada de detección de marcas de orden de bytes y el tamaño del búfer y, opcionalmente, deja abierta la secuencia.

System_CAPS_pubmethodStreamReader(String)

Inicializa una nueva instancia de la clase StreamReader para el nombre de archivo especificado.

System_CAPS_pubmethodStreamReader(String, Boolean)

Inicializa una nueva instancia de la clase StreamReader para el nombre de archivo especificado, con la opción especificada de detección de marcas de orden de bytes.

System_CAPS_pubmethodStreamReader(String, Encoding)

Inicializa una nueva instancia de la clase StreamReader para el nombre de archivo especificado y con la codificación de caracteres indicada.

System_CAPS_pubmethodStreamReader(String, Encoding, Boolean)

Inicializa una nueva instancia de la clase StreamReader del nombre de archivo especificado, con la codificación de caracteres especificada y la opción especificada de detección de marcas de orden de bytes.

System_CAPS_pubmethodStreamReader(String, Encoding, Boolean, Int32)

Inicializa una nueva instancia de la clase StreamReader del nombre de archivo especificado, con la codificación de caracteres especificada, la opción especificada de detección de marcas de orden de bytes y el tamaño del búfer.

NombreDescripción
System_CAPS_pubpropertyBaseStream

Devuelve la secuencia subyacente.

System_CAPS_pubpropertyCurrentEncoding

Obtiene la codificación de caracteres que actualmente utiliza este objeto StreamReader.

System_CAPS_pubpropertyEndOfStream

Obtiene un valor que indica si la actual posición está al final de la secuencia.

NombreDescripción
System_CAPS_pubmethodClose()

Cierra el objeto StreamReader y la secuencia subyacente, además de liberar todos los recursos del sistema asociados al lector.(Reemplaza a TextReader.Close()).

System_CAPS_pubmethodCreateObjRef(Type)

Crea un objeto que contiene toda la información pertinente necesaria para generar a un proxy utilizado para comunicarse con un objeto remoto.(Heredado de MarshalByRefObject.)

System_CAPS_pubmethodDiscardBufferedData()

Borra el búfer interno.

System_CAPS_pubmethodDispose()

Libera todos los recursos utilizados por el objeto TextReader.(Heredado de TextReader.)

System_CAPS_protmethodDispose(Boolean)

Cierra la secuencia subyacente, libera los recursos no administrados que utiliza StreamReader y, de forma opcional, libera los recursos administrados.(Reemplaza a TextReader.Dispose(Boolean)).

System_CAPS_pubmethodEquals(Object)

Determina si el objeto especificado es igual al objeto actual.(Heredado de Object.)

System_CAPS_protmethodFinalize()

Permite que un objeto intente liberar recursos y realizar otras operaciones de limpieza antes de ser reclamado por el recolector de basura. (Heredado de Object.)

System_CAPS_pubmethodGetHashCode()

Sirve como la función hash predeterminada.(Heredado de Object.)

System_CAPS_pubmethodGetLifetimeService()

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

System_CAPS_pubmethodGetType()

Obtiene el Type de la instancia actual.(Heredado de Object.)

System_CAPS_pubmethodInitializeLifetimeService()

Obtiene un objeto de servicio de duración para controlar la directiva de duración de esta instancia.(Heredado de MarshalByRefObject.)

System_CAPS_protmethodMemberwiseClone()

Crea una copia superficial del Object actual.(Heredado de Object.)

System_CAPS_protmethodMemberwiseClone(Boolean)

Crea una copia superficial del actual MarshalByRefObject objeto.(Heredado de MarshalByRefObject.)

System_CAPS_pubmethodPeek()

Devuelve el siguiente carácter disponible pero no lo consume.(Reemplaza a TextReader.Peek()).

System_CAPS_pubmethodRead()

Lee el siguiente carácter de la secuencia de entrada y hace avanzar la posición de los caracteres en un carácter.(Reemplaza a TextReader.Read()).

System_CAPS_pubmethodRead(Char[], Int32, Int32)

Lee un máximo especificado de caracteres de la secuencia actual en un búfer, comenzando en el índice especificado.(Reemplaza a TextReader.Read(Char[], Int32, Int32)).

System_CAPS_pubmethodReadAsync(Char[], Int32, Int32)

Lee de forma asincrónica un número máximo de caracteres especificado en la secuencia actual y escribe los datos en un búfer, comenzando en el índice especificado.(Reemplaza a TextReader.ReadAsync(Char[], Int32, Int32)).

System_CAPS_pubmethodReadBlock(Char[], Int32, Int32)

Lee un número máximo de caracteres especificado en la secuencia actual y escribe los datos en un búfer, comenzando en el índice especificado.(Reemplaza a TextReader.ReadBlock(Char[], Int32, Int32)).

System_CAPS_pubmethodReadBlockAsync(Char[], Int32, Int32)

Lee de forma asincrónica un número máximo de caracteres especificado en la secuencia actual y escribe los datos en un búfer, comenzando en el índice especificado.(Reemplaza a TextReader.ReadBlockAsync(Char[], Int32, Int32)).

System_CAPS_pubmethodReadLine()

Lee una línea de caracteres de la secuencia actual y devuelve los datos como una cadena.(Reemplaza a TextReader.ReadLine()).

System_CAPS_pubmethodReadLineAsync()

Lee de forma asincrónica una línea de caracteres de la secuencia actual y devuelve los datos como una cadena.(Reemplaza a TextReader.ReadLineAsync()).

System_CAPS_pubmethodReadToEnd()

Lee todos los caracteres desde la posición actual hasta el final de la secuencia.(Reemplaza a TextReader.ReadToEnd()).

System_CAPS_pubmethodReadToEndAsync()

Lee de forma asincrónica todos los caracteres desde la posición actual hasta el final de la secuencia y los devuelve como una cadena.(Reemplaza a TextReader.ReadToEndAsync()).

System_CAPS_pubmethodToString()

Retorna una cadena que representa al objeto actual. (Heredado de Object.)

NombreDescripción
System_CAPS_pubfieldSystem_CAPS_staticNull

Objeto StreamReader en torno a una secuencia vacía.

System_CAPS_noteNota

Para ver el código fuente de .NET Framework para este tipo, consulte el Reference Source. Puede examinar el código fuente en línea, descargue la referencia para verla sin conexión y recorrer (incluidas las revisiones y actualizaciones) durante la depuración; see instructions.

StreamReader está diseñado para la entrada de caracteres en una codificación determinada, mientras que la Stream clase está diseñada para la entrada y salida de bytes. Utilice StreamReader para leer líneas de información desde un archivo de texto estándar.

System_CAPS_importantImportante

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

StreamReader el valor predeterminado para la codificación UTF-8 a menos que se especifique lo contrario, en lugar de utilizar la página de códigos ANSI del sistema actual. UTF-8 controla caracteres Unicode correctamente y ofrece resultados coherentes en versiones traducidas del sistema operativo. Si obtiene la codificación de caracteres mediante la CurrentEncoding propiedad, el valor no es confiable hasta después del primer Read método, ya que la detección automática de codificación no se realiza hasta la primera llamada a un Read (método).

De forma predeterminada, un StreamReader no es seguro para la ejecución de subprocesos. Consulte TextReader.Synchronized para un contenedor seguro para subprocesos.

El Read(Char[], Int32, Int32) y Write(Char[], Int32, Int32) sobrecargas del método leer y escribir el número de caracteres especificado por el count parámetro. Se trata de distinguirse BufferedStream.Read y BufferedStream.Write, que leen y escriben el número de bytes especificado por el count parámetro. Utilice la BufferedStream métodos sólo para leer y escribir un número entero de byte de elementos de matriz.

System_CAPS_noteNota

Al leer de un Stream, resulta más eficaz utilizar un búfer que tiene el mismo tamaño que el búfer interno de la secuencia.

Para obtener una lista de tareas de E/S comunes, consulte Tareas de E/S comunes.

En el ejemplo siguiente se utiliza una instancia de StreamReader leer texto desde un archivo. El constructor utilizado en este ejemplo no se admite para su uso en Tienda Windows aplicaciones.

using System;
using System.IO;

class Test 
{
    public static void Main() 
    {
        try 
        {
            // Create an instance of StreamReader to read from a file.
            // The using statement also closes the StreamReader.
            using (StreamReader sr = new StreamReader("TestFile.txt")) 
            {
                string line;
                // Read and display lines from the file until the end of 
                // the file is reached.
                while ((line = sr.ReadLine()) != null) 
                {
                    Console.WriteLine(line);
                }
            }
        }
        catch (Exception e) 
        {
            // Let the user know what went wrong.
            Console.WriteLine("The file could not be read:");
            Console.WriteLine(e.Message);
        }
    }
}

En el ejemplo siguiente se crea un StreamReader objeto y llama su ReadAsync método para leer un archivo de forma asincrónica.

using System;
using System.IO;
using System.Threading.Tasks;

class Example
{
    public static void Main()
    {
        ReadAndDisplayFilesAsync();
    }

    private async static void ReadAndDisplayFilesAsync()
    {
        String filename = "TestFile1.txt";
        Char[] buffer;

        using (var sr = new StreamReader(filename)) {
            buffer = new Char[(int)sr.BaseStream.Length];
            await sr.ReadAsync(buffer, 0, (int)sr.BaseStream.Length);
        }

        Console.WriteLine(new String(buffer));
    }
}
// The example displays the following output:
//       This is the first line of text in a relatively short file.
//       This is the second line.
//       This is the third line.
//       This is the fourth and final line.

Universal Windows Platform
Disponible desde 4.5
.NET Framework
Disponible desde 1.1
Portable Class Library
Compatible con: portable .NET platforms
Silverlight
Disponible desde 2.0
Windows Phone Silverlight
Disponible desde 7.0
Windows Phone
Disponible desde 8.1

Los miembros estáticos públicos (Shared en Visual Basic) de este tipo son seguros para la ejecución de subprocesos. No se garantiza que los miembros de instancias sean seguros para la ejecución de subprocesos.

Volver al principio
Mostrar:
© 2016 Microsoft