Archivos en C++
Los programas que crearmos manejan datos en "tiempo de ejecucion", es decir esos datos existen mientras el programa corra, pero una vez que los cerramos esos datos se pierden, con lo cual un sistema debe tener un método para almacenar cierta información para poder usar en una futura ejecución, principio en el que se basan las "Bases de Datos".
Hoy aprenderemos como manejar un archivo de texto simple ".txt", las bases de datos las dejaremos de lado por ahora, pero más adelante las veremos.
Para manejar los archivos en C++, necesitamos de la librería #include <fstream>
Para los strings recuerden usamos la librería #include <string>
Bien para ingresar los datos al archivo, necesitamos una variable de tipo ofstream y para leer los datos necesitamos una variable de tipo ifstream.
El siguiente ejemplo trata de que por consola pidamos un dato y que lo guardemos automáticamente en un archivo "Hola.txt" :
#include <cstdlib>
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
int main(int argc, char *argv[])
{
ofstream salida("Hola.txt",ios::app); // Abre archivo
string c;
cin >> c; // pide dato desde consola
c="\n"+c; // se le pone un salto de linea al string
salida << c; // se le agrega el string al archivo
salida.close(); // se cierra el archivo para guardarlo
string data; // variable para leer los datos
ifstream file; // para leer el archivo
file.open("Hola.txt"); // se lee el archivo
while (!file.eof( )) // mientras tenga data
{
file >> data; // se lee un token (palabras separadas por espacios de linea o saltos de linea)
cout<<data<<endl; // imprime token almacenado en data
}
file.close( ); //se cierra el stream file
system("PAUSE");
return EXIT_SUCCESS;
}
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
int main(int argc, char *argv[])
{
ofstream salida("Hola.txt",ios::app); // Abre archivo
string c;
cin >> c; // pide dato desde consola
c="\n"+c; // se le pone un salto de linea al string
salida << c; // se le agrega el string al archivo
salida.close(); // se cierra el archivo para guardarlo
string data; // variable para leer los datos
ifstream file; // para leer el archivo
file.open("Hola.txt"); // se lee el archivo
while (!file.eof( )) // mientras tenga data
{
file >> data; // se lee un token (palabras separadas por espacios de linea o saltos de linea)
cout<<data<<endl; // imprime token almacenado en data
}
file.close( ); //se cierra el stream file
system("PAUSE");
return EXIT_SUCCESS;
}
No hay comentarios:
Publicar un comentario