Diseñe un programa que permita ingresar datos personales a un archivo llamado “MisDatos.txt”, posteriormente que los muestre en pantalla.
Debes utilizar Streams para dicha solución.
aquí les dejo la solución de este ejercicios espero que les sirva.
struct MisDatos{
char nombre[50];
char apellido[50];
char direccion[50];
};
guardar la estrutura: void Guardar(MisDatos guardar)
muestra la estructura: void getMostar()
escribe el archivo: archivo.write( (char *)&guardar,sizeof(MisDatos));
lee el archivo: archivo.read((char*)&mostrar,sizeof(MisDatos));
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 | /* Choc Cac, Mynor R. correo: mynorrene arroba choccac punto com lmcc */ #include <iostream> #include <fstream> using namespace std; /* Solo usara estas tres variales, creo que ocn eso es suficiente. */ struct MisDatos{ char nombre[50]; char apellido[50]; char direccion[50]; }; void Guardar(MisDatos guardar) { fstream archivo ; archivo.open( "choccac.bin" ,ios::out | ios::app | ios::binary); archivo.write( ( char *)&guardar, sizeof (MisDatos)); archivo.close(); } void getMostar() { MisDatos mostrar; fstream archivo( "choccac.bin" , ios::in | ios::binary); if (archivo.fail()) cerr << "Error al abrir choccac.bin" << endl; else while (!archivo.eof()) { archivo.read(( char *)&mostrar, sizeof (MisDatos)); if (!archivo.eof()) { cout << "\n\nNombre: " <<mostrar.nombre; cout << "\nApellido: " <<mostrar.apellido; cout << "\nDireccion: " <<mostrar.direccion; } } archivo.close(); } int main() { int opcion=0; char amor[2]; MisDatos acc; do { cout << "\n\nmenu\n\n" ; cout << "1. Agregar.\n" ; cout << "2. mostrar.\n" ; cout << "3. Salir.\n" ; cout << "Que opcion desea: " ; cin >> opcion; switch (opcion) { case 1: cin.getline(amor,2); cout << "Nombre: " ; cin.getline(acc.nombre,50, '\n' ); cout << "Apellido: " ; cin.getline(acc.apellido,50, '\n' ); cout << "Direccion: " ; cin.getline(acc.direccion,50, '\n' ); Guardar(acc); break ; case 2: getMostar(); break ; } } while (opcion != 3); return 0; } |
contraseña: lmcc