Ir al contenido principal

Leer y escribir archivos de texto con C#

Leer y escribir archivos de texto con C#

En este tutorial se muestra un ejemplo de como leer archivos de texto y escribir o sobre escribir en ellos, utilizando las clases StreamReader StreamWriter.

1.- Se crea un proyecto nuevo en Visual Studio y se elige el lenguaje C# y una aplicación de consola, en este caso se llamara WriteAndRead.




2. Una vez creado el proyecto, se hace clic derecho sobre el nombre del proyecto y se selecciona la opción Add + New Item o la combinación de teclas Ctrl + Shift + A, este paso es para crear un archivo de texto en el proyecto, en el que se podrá escribir y leer su contenido. 




3. En el cuadro de dialogo se elige el tipo de archivo Text File y se le cambia el nombre, en este caso a Data.txt y se agrega al proyecto.




4. Una vez creado el archivo, este aparece en el proyecto y además es posible modificar su contenido en el editor.



5. Al seleccionar el archivo se muestran sus propiedades y ubicación.



6. Se modificar la propiedad Copy to Output Directory, con esto se copia el archivo al directorio donde se genera el ejecutable, esto es necesario indicarlo porque de otra forma mostrara un error al no encontrar el archivo. 



7. A continuación se llama a la librería System.IO; que es la librería que permite la lectura y escritura de archivos, entre otras funciones.



8. Para escribir en el archivo de texto se puede crear un método como el que se muestra a continuación en el que se crea una instancia de la clase StreamWriter, que es por medio del cual se puede escribir un archivo, si se omite la palabra True, el archivo se sobre escribe, y si se agrega, entonces se agrega el texto al final del archivo.

A.-Para insertar texto se utiliza el método WriteLine().

B.Para cerrar el archivo y liberarlo para realizar alguna otra opción como leerlo por ejemplo se debe cerrar con el método Close().



9. Para leer el contenido del archivo se crear una instancia de la clase StreamReader.

A. Para leer una linea se utiliza el método ReadLine().

B.-Para cerrar el archivo y liberarlo para realizar alguna otra opción como escribir en el, se debe cerrar con el método Close().




10. Dentro del método Main se llaman a los métodos creado anteriormente con lo que se agregar un nuevo texto al final del archivo y posteriormente se imprime su contenido.



11. En la siguiente imagen se muestra el resultado de ejecutar el programa tres veces.



Código completo


using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace WriteAndRead
{
    class Program
    {
        static void Main(string[] args)
        {
            WriteFile("Values.txt","hola");
            ReadFile("Values.txt");
            
            Console.ReadKey(true);
        }
        
        public static void WriteFile(string file, string value)
        {
            StreamWriter myWriter = new StreamWriter(file,true);
            myWriter.WriteLine(value);
            myWriter.Close();
        }
        
        public static void ReadFile(string file)
        {
            StreamReader myReader = new StreamReader(file);
            string line = "";
            while (line != null)
            {
                line = myReader.ReadLine();
                if (line != null)
                    Console.WriteLine(line);
            }
            myReader.Close();
        }
    }
}



Comentarios

Entradas más populares de este blog

Creación de Librerías en Java

Creación de Librerías en Java   Las librerías son un conjunto de clases con funciones especificas que ayudan a desarrollar aplicaciones más complejas de una forma sencilla, por ejemplo si se requiere realizar cálculos matemáticos y emplear el funciones como el Seno o Coseno, simplemente se importa la librería Math y se utilizan estos métodos, en lugar de desarrollarlos. Java cuenta con una extensa lista de librerías disponibles dentro del JDK o desarrolladas por terceros, pero también existe la posibilidad de desarrollar librerías propias para reutilizar de forma más eficiente el código, por ejemplo si se trabaja de forma cotidiana con conexión a base de datos, se pueden desarrollar métodos genéricos que realicen la conexión, que validen las consultas, etc. de forma que su uso reduzca el tiempo de desarrollo e incremente la productividad. Para este tutorial se van a crear dos proyectos en NetBeans, uno sera la librería y el otro proyecto hará uso de esta.

Elegir la clase a ejecutar en NetBeans, MVC

Elegir la clase a ejecutar en NetBeans Para que java pueda ejecutar una aplicación esta debe tener un método conocido como punto de entrada, este método tiene la sintaxis: void static void main(String [] sax){ //código } En ocasiones en una aplicación tiene varios puntos de entrada, que pueden servir para probar diferentes partes de la aplicación sin tener que recorrer o pasar por varias clases, para esto se puede seleccionar directamente en las propiedades del proyecto que clase será la principal.

Librerías JOptionPane para generar ventanas de entrada y salida de datos

Para poder introducir datos leídos desde el teclado existen varias formas, una de ellas hace uso de la librería javax.swing.JOptionPane que entre otras opciones permite mostrar ventanas para introducir datos, y ventanas para mostrar valores. Con el uso de esta librería se crean pequeñas interfaces definidas por el sistema, pero ya se hace uso de las librerías graficas swing, que se verán más adelante.