Para este ejemplo usaremos un archivo de texto sencillo con sólo tres líneas:
El código siguiente te permitirá leer el texto del archivo entero, usando System.IO.File.ReadAllText.
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace LeerArchivoTxtCsharp { class Program { static void Main(string[] args) { string text = System.IO.File.ReadAllText(@"C:\ruta\archivo.txt"); System.Console.WriteLine("Contenido del archivo = {0}", text); Console.WriteLine("Presione cualquier tecla para salir."); System.Console.ReadKey(); } } }
El resultado en consola es el siguiente:
Este segundo método te permitirá leer línea por línea con System.IO.File.ReadAllLines:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace LeerArchivoTxtCsharp { class Program { static void Main(string[] args) { string[] lines = System.IO.File.ReadAllLines(@"C:\ruta\archivo.txt"); System.Console.WriteLine("Contenido del archivo = "); foreach (string line in lines) { // Use a tab to indent each line of the file. Console.WriteLine("\t" + line); } Console.WriteLine("Presione cualquier tecla para salir."); System.Console.ReadKey(); } } }
El resultado es el siguiente:
En consola se aprecia que algunos caracteres no se despliegan correctamente, pero el contenido se lee correctamente, el problema sólo ocurre al imprimir los caracteres en consola.