14. Ejemplo manejo de archivos
#include <iostream>
#include <fstream>
using namespace std;
int main(){
cout <<"Este programa permite crea un archivo con lecturas de"<<endl;
cout <<"temperatura y humedad para distintos días de la semana"<<endl;
cout <<"Todo se guarda en un archivo prueba.txt"<<endl;
cout <<"ctrl + D finaliza la carga de datos."<<endl;
int i=0; char dia[11]; float temp ,humedad; // Variables usadas parapasar datos al flujo
ofstream flujo_salida("prueba.txt", ios::out | ios::ate ); // Añade al final
// El objeto flujo es abierto implicitamente.
if(!flujo_salida){ // Controlo que se pueda crear el flujo y asociar alarchivo
cout<<"Error no se puede abrir archivo. Finalizando";
return -1;
}
cout<<endl<<"Flujo de salida abierto correctamente"<<endl;
cout<<"Ingrese: Dia y luego Temperatura y Humedad dejando un espacio entrecada campo"<<endl;
while(cin>>dia>>temp>>humedad){
flujo_salida<<i<<" "<<dia <<" "<<temp <<" "<<humedad <<endl;
i++;
}
flujo_salida.close();
if(!flujo_salida.is_open ()){
cout <<"Flujo de Salida: cerrado"<<endl;
}
ifstream flujo_entrada("prueba.txt"); //ios::in implicito !!
if(!flujo_entrada){ // Controlo que se pueda crear el flujo y asociar alarchivo
cout<<"Error no se puede abrir archivo. Finalizando";
return -1;
}
cout<<endl<<"Flujo de entrada abierto correctamente"<<endl;
cout<<"Nro."<<'\t'<<"Dia"<<'\t'<<"Temp."<<'\t'<<"Humedad"<<endl;
while (flujo_entrada>>i>>dia>>temp>>humedad){
cout<<i<<'\t'<<dia <<'\t'<<temp <<'\t'<<humedad<<endl;
}
cout<<endl;
flujo_entrada.close();
if(!flujo_entrada.is_open ()){
cout<<"Flujo de Entrada:cerrado"<<endl;
}
cout<<"Finalizando el programa!!";
return 0;
}