Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Industrial programming >> Lenguaje C

Tutorial de C# Stream:StreamReader, StreamWriter con ejemplo

En las operaciones de archivos de C#, normalmente las secuencias se usan para leer y escribir archivos. Una secuencia es una capa adicional creada entre una aplicación y un archivo. La secuencia se utiliza para garantizar operaciones de lectura y escritura fluidas en el archivo.

Los flujos se utilizan normalmente cuando se leen datos de archivos grandes. Mediante el uso de secuencias, los datos de archivos grandes se dividen en pequeños fragmentos y se envían a la secuencia. Estos fragmentos de datos se pueden leer desde la aplicación.

La razón para dividirlo en pequeños fragmentos es el impacto en el rendimiento de leer un archivo grande de una sola vez. Si tuviera que leer los datos de, por ejemplo, un archivo de 100 MB de una sola vez, su aplicación podría bloquearse y volverse inestable. Entonces, el mejor enfoque es usar secuencias para dividir el archivo en partes manejables.

Entonces, cuando se lleva a cabo una operación de escritura en un archivo, los datos que se escribirán primero se escriben en la secuencia. A partir de la secuencia, los datos se escriben en el archivo. Lo mismo ocurre con la operación de lectura. En la operación de lectura, los datos primero se transfieren del archivo a la secuencia. Luego, los datos se leen desde la aplicación a través de la transmisión. Veamos un ejemplo de cómo podemos leer y escribir usando flujos.

En este tutorial, aprenderá:

Lector de corrientes

El lector de secuencias se utiliza para leer datos de un archivo mediante secuencias. Los datos del archivo se leen primero en la secuencia. A partir de entonces, la aplicación lee los datos de la secuencia.

Para nuestro ejemplo, supondremos que tenemos un archivo en la unidad D llamado Example.txt. El archivo será un archivo de texto simple y tendrá 2 líneas como se muestra a continuación

Para nuestro ejemplo, crearemos una aplicación de consola simple y trabajaremos con transmisiones de archivos

Veamos un ejemplo de cómo podemos usar secuencias para leer datos de un archivo. Introduzca el siguiente código en el archivo program.cs.

using System;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DemoApplication
{
  class Tutorial
  {
   static void Main(string[] args)
   {
    String path = @"D:\Example.txt";

    using (StreamReader sr = File.OpenText(path))
    {
     String s = "";

     while ((s = sr.ReadLine()) != null)
     {
      Console.WriteLine(s);
     }
    }
   Console.ReadKey();
  }
 }
}

Explicación del código:-

  1. Primero, estamos declarando un objeto lector de flujo. El objeto lector de secuencias se usa en C# para definir una secuencia desde el archivo a la aplicación. Los datos se enviarán desde el archivo a la secuencia cada vez que se lean datos del archivo. File.OpenText se utiliza para abrir el archivo "Example.txt" en modo de solo lectura. Luego, el controlador del archivo se envía al objeto lector de secuencias.
  2. A continuación, estamos definiendo una variable temporal 's' que se usará para leer todos los datos del archivo.
  3. Luego usamos el método de lector de secuencias ReadLine para leer cada línea del búfer de secuencias. Cuando realizamos esta operación, cada línea se transferirá primero del archivo al búfer. Luego, la línea de cadena se transferirá del búfer a la variable 's'. Luego escribimos el contenido de la cadena 's' en la consola.

Cuando se configura el código anterior y el proyecto se ejecuta con Visual Studio, obtendrá el siguiente resultado.

Salida:-

A partir de la salida, puede ver que Stream Reader lee ambas líneas del archivo. Finalmente, las líneas de la cadena leídas de la transmisión se enviaron a la Consola.

Escritor de flujo

El escritor de secuencias se utiliza para escribir datos en un archivo mediante secuencias. Los datos de la aplicación se escriben primero en la secuencia. Después de eso, la secuencia escribe los datos en el archivo. Veamos un ejemplo de cómo podemos usar secuencias para escribir datos de un archivo. Introduzca el siguiente código en el archivo program.cs.

using System;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DemoApplication
{
  class Tutorial
  {
   static void Main(string[] args)
   {
    String path = @"D:\Example.txt";
    
    using (StreamWriter sr = File.AppendText(path))
    {
     sr.WriteLine("Guru99 - ASP.Net");
     sr.Close();

     Console.WriteLine(File.ReadAllText(path));
    }
    Console.ReadKey();
  }
 }
}

Explicación del código:-

  1. Primero, estamos declarando un objeto escritor de flujo. El objeto de escritor de secuencias se usa en C# para definir una secuencia. Luego, la secuencia se usa para escribir datos de la aplicación en el archivo. Los datos se enviarán desde la aplicación a la secuencia cada vez que sea necesario escribirlos. El comando File.AppendText se usa para abrir el archivo "Example.txt" en un modo de adición. Luego, el controlador del archivo se envía al objeto de escritor de flujo.
  2. Estamos utilizando el método de escritura de transmisión Writeline para escribir la línea "Guru99 - ASP.Net" en la transmisión. Desde la transmisión, la línea se escribirá en el archivo.
  3. Luego, cerramos el streamwriter después de escribir en el archivo. Normalmente es una buena práctica cerrar los controladores de archivos cuando el archivo ya no es necesario para fines de escritura.
  4. Finalmente, leemos el contenido del archivo nuevamente y lo escribimos en el registro de la consola. Esto es para verificar si la línea se escribió en el archivo.

Cuando se configura el código anterior y el proyecto se ejecuta con Visual Studio, obtendrá el siguiente resultado.

Salida:-

En el resultado, puede ver que la línea "Guru99 - ASP.Net" se agregó al archivo con éxito. Las 3 líneas de texto se pueden ver en la consola.

Resumen


Lenguaje C

  1. C++ For Loop con EJEMPLO
  2. Declaración de caso de cambio de C ++ con EJEMPLO
  3. C++ Asignación dinámica de arreglos con ejemplo
  4. Entrada/salida básica de C++:ejemplo de Cout, Cin, Cerr
  5. Apilar en C++ STL con ejemplo
  6. Estructura C++ con ejemplo
  7. Clase y objeto C++ con ejemplo
  8. std::list en C++ con ejemplo
  9. Tutorial de clase abstracta de C# con ejemplo:¿Qué es la abstracción?
  10. Tutorial de colecciones de C# con ejemplos
  11. Java BufferedReader:cómo leer un archivo en Java con un ejemplo