En este artículo te mostraré cómo escribir contenido en un archivo de texto usando el lenguaje de programación C++.
Al final sabrás cómo escribir líneas en un archivo de texto plano. Veremos dos modos, el modo output para escribir remplazando el contenido, y el modo append para escribir agregando el contenido. Todo esto programando en C++.
Abriendo el archivo
Debemos declarar una variable de tipo ofstream, que apuntará al fichero. Después invocamos al método open, pasándole el nombre del archivo y el modo de apertura. Te mostraré dos:
- output: simplemente se escribe sobre el archivo, remplazando el contenido que exista en el mismo. Está en fstream::out.
- append: agrega el contenido al final del archivo, por lo que no remplaza al existente. Está en fstream::app.
Para el ejemplo usaré fstream::out.
string nombreArchivo = "videojuegos.txt";
ofstream archivo;
// Abrimos el archivo
archivo.open(nombreArchivo.c_str(), fstream::out);
Escribiendo contenido
Vamos a escribir contenido en el archivo simplemente redirigiendo al mismo usando << así como cuando imprimimos en la consola redirigiendo a cout; pues así se hace en C++
Por cierto, al final de escribir, cerramos el archivo con close.
// Y le escribimos redirigiendo
archivo << "cuph";
archivo << "ead";
// No olvidemos saltos de línea
archivo << endl;
// Podemos escribir más
archivo << "doom eternal" << endl;
archivo << "doom 2016" << endl;
archivo << "resident evil 2" << endl;
// Finalmente lo cerramos
archivo.close();
cout << "Escrito correctamente";
Poniendo todo junto
El código completo para guardar contenido en un archivo de texto plano usando C++ es el siguiente:
#include <iostream>
#include <fstream>
using namespace std;
/*
https://parzibyte.me/blog/
*/
int main() {
    string nombreArchivo = "videojuegos.txt";
    ofstream archivo;
		// Abrimos el archivo
		archivo.open(nombreArchivo.c_str(), fstream::out);
		// Y le escribimos redirigiendo
		archivo << "cuph";
		archivo << "ead";
		// No olvidemos saltos de línea
		archivo << endl;
		// Podemos escribir más
		archivo << "doom eternal" << endl;
		archivo << "doom 2016" << endl;
		archivo << "resident evil 2" << endl;
    // Finalmente lo cerramos
		archivo.close();
		cout << "Escrito correctamente";
}
Te invito a leer más sobre C++ en mi blog.