Cómo Leer Archivos Línea por Línea en C#

Cómo Leer Archivos Línea por Línea en C#

En el mundo de la programación, trabajar con archivos es una tarea muy común. En C#, el lenguaje de programación desarrollado por Microsoft, existen distintos métodos para leer un archivo línea por línea. En este artículo, explicaremos cómo hacerlo de manera efectiva, para que puedas agregar esta habilidad a tu conjunto de herramientas.

📋 Aquí podrás encontrar✍
  1. Prerrequisitos
  2. Leer un archivo línea por línea en C#
  3. Ejemplos de código en C#
    1. Ejemplo 1: Contar las líneas de un archivo
    2. Ejemplo 2: Realizar una búsqueda por palabra clave en un archivo
    3. Ejemplo 3: Almacenar cada línea en una lista
  4. Conclusión
  5. Preguntas frecuentes
    1. ¿Puedo leer un archivo que se encuentra en una ubicación remota?
    2. ¿Qué sucede si el archivo tiene una línea en blanco?
    3. ¿Cómo puedo leer un archivo que no tiene un fin de línea después de la última línea?
    4. ¿Puedo leer diferentes tipos de archivos, como archivos CSV o archivos de texto sin formato?

Prerrequisitos

Antes de comenzar, es necesario asegurarse de tener instalada una versión del entorno de desarrollo integrado de Visual Studio, así como de tener conocimientos básicos de programación en C#.

Leer un archivo línea por línea en C#

Para leer un archivo línea por línea en C#, primero debemos crear un objeto de tipo 'StreamReader' y utilizar la función 'ReadLine()' para leer cada línea del archivo. Luego, podemos procesar la información de la línea leída como lo deseemos.

El siguiente ejemplo muestra cómo leer un archivo línea por línea en C#:


using System;
using System.IO;

class Program {
static void Main() {
using (StreamReader reader = new StreamReader("archivo.txt")) {
string linea;
while ((linea = reader.ReadLine()) != null) {
Console.WriteLine(linea);
}
}
}
}

Este código utiliza un 'StreamReader' para abrir un archivo llamado 'archivo.txt', luego, utiliza un ciclo 'while' para leer cada línea del archivo con la función 'ReadLine()' y finalmente imprime cada línea en la consola con 'Console.WriteLine()'.

Ejemplos de código en C#

A continuación, te mostramos algunos ejemplos de cómo leer un archivo línea por línea en C# y realizar distintas acciones con la información leída:

Ejemplo 1: Contar las líneas de un archivo


using System;
using System.IO;

class Program {
static void Main() {
int contador = 0;
using (StreamReader reader = new StreamReader("archivo.txt")) {
string linea;
while ((linea = reader.ReadLine()) != null) {
contador++;
}
}
Console.WriteLine("El archivo tiene {0} líneas", contador);
}
}

Este código utiliza un 'StreamReader' para abrir un archivo llamado 'archivo.txt'. Luego, utiliza un ciclo 'while' para leer cada línea del archivo con la función 'ReadLine()' y aumentar el valor de 'contador' por cada línea que es leída. Finalmente, se imprime el valor de 'contador' en la consola.

Ejemplo 2: Realizar una búsqueda por palabra clave en un archivo


using System;
using System.IO;

class Program {
static void Main() {
string palabra = "C#";
using (StreamReader reader = new StreamReader("archivo.txt")) {
string linea;
while ((linea = reader.ReadLine()) != null) {
if (linea.Contains(palabra)) {
Console.WriteLine(linea);
}
}
}
}
}

Este código utiliza un 'StreamReader' para abrir un archivo llamado 'archivo.txt'. Luego, utiliza un ciclo 'while' para leer cada línea del archivo con la función 'ReadLine()'. Si la línea leída contiene la palabra clave especificada (en este caso, "C#"), la línea es impresa en la consola.

Ejemplo 3: Almacenar cada línea en una lista


using System;
using System.IO;
using System.Collections.Generic;

class Program {
static void Main() {
List lineas = new List();
using (StreamReader reader = new StreamReader("archivo.txt")) {
string linea;
while ((linea = reader.ReadLine()) != null) {
lineas.Add(linea);
}
}
Console.WriteLine("Se almacenaron {0} líneas en la lista", lineas.Count);
}
}

Este código utiliza un 'StreamReader' para abrir un archivo llamado 'archivo.txt'. Luego, utiliza un ciclo 'while' para leer cada línea del archivo con la función 'ReadLine()' y almacenar cada línea en una lista utilizando la función 'Add()'. Finalmente, se imprime en la consola el número de líneas almacenadas en la lista.

Conclusión

Leer un archivo línea por línea en C# es una tarea muy útil que debes conocer si trabajas con archivos en este lenguaje de programación. A través de este artículo, te hemos mostrado diferentes métodos para leer un archivo línea por línea, así como ejemplos de código que utilizan esta funcionalidad para realizar diferentes tareas. Esperamos que esta información te sea de ayuda en tus próximos proyectos.

Preguntas frecuentes

¿Puedo leer un archivo que se encuentra en una ubicación remota?

Sí, es posible utilizar un 'StreamReader' para leer archivos remotos con una URL en vez de una ruta de archivo local.

¿Qué sucede si el archivo tiene una línea en blanco?

La función 'ReadLine()' leerá esa línea en blanco como una cadena vacía y seguirá avanzando en el archivo.

¿Cómo puedo leer un archivo que no tiene un fin de línea después de la última línea?

En este caso, la función 'ReadLine()' devolverá la última línea del archivo, pero no detectará un fin de línea después de ella. Por lo tanto, es importante tener en cuenta este comportamiento de la función cuando se trabaja con este tipo de archivos.

¿Puedo leer diferentes tipos de archivos, como archivos CSV o archivos de texto sin formato?

Sí, la funcionalidad para leer un archivo línea por línea aplica para cualquier tipo de archivo de texto que pueda ser abierto con un 'StreamReader'. Por lo tanto, puedes leer cualquier formato de archivo de texto utilizando este método.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Subir