Escribir datos en archivos

Completados

Escribir en un archivo permite que el programa guarde los resultados, mantenga los registros o conserve los datos entre ejecuciones. C# ofrece varias maneras de colocar datos en un archivo, divididos principalmente entre sobrescribir y anexar.

Escribir en un archivo con File.WriteAllText()

File.WriteAllText() crea un nuevo archivo o sobrescribe completamente un archivo existente con el mismo nombre.

File.WriteAllText("greeting.txt", "Hello, world!\n");

Warning

File.WriteAllText() borra el contenido existente del archivo en el momento en que se llama. Úselo solo cuando esté seguro de que desea reemplazar el contenido del archivo.

Agregar texto a un archivo con File.AppendAllText()

File.AppendAllText() añade contenido al final del archivo, conservando todo lo que ya hay. Si el archivo aún no existe, C# lo crea.

File.AppendAllText("log.txt", "New entry added.\n");

Anexar es una buena opción para los archivos de registro, las notas y los datos que quiera compilar con el tiempo.

Escritura de varias líneas con StreamWriter

Para obtener más control, como escribir muchas líneas sin crear primero una cadena gigante, use un StreamWriter con using. Su constructor toma un segundo parámetro opcional que establece el modo de anexión.

string[] tasks = { "Buy groceries", "Walk the dog", "Finish homework" };

using StreamWriter writer = new StreamWriter("tasks.txt", append: false);

foreach (string task in tasks)
{
    writer.WriteLine(task);
}

.WriteLine() agrega una nueva línea después de cada entrada automáticamente, a diferencia de .Write().

Elección entre escritura y anexión

Utilizar escribir cuando... Utiliza la opción «Append» cuando...
Quieres empezar desde cero cada vez Usted quiere mantener el contenido existente.
Está guardando el resultado final de un proceso Está registrando nuevos eventos o registros
La sobrescritura es intencionada Preservar la historia es importante