Ver Mensaje Individual
  #2 (permalink)  
Antiguo 13/09/2009, 16:40
Avatar de fradve
fradve
 
Fecha de Ingreso: abril-2009
Mensajes: 157
Antigüedad: 15 años, 8 meses
Puntos: 7
De acuerdo Duda al escribir y leer archivos

Mediante el siguiente código puedes ingresar un número ilimitado de personas, y desplagarlas en la pantalla, Espero te sea de ayuda...


Código c++:
Ver original
  1. #include<iostream.h>
  2. #include<conio.h>
  3. #include<stdio.h>
  4.  
  5. FILE *pfile;
  6.  
  7.  
  8. struct persona
  9. {
  10.   char nombre[10];
  11.   int edad;
  12.   char direccion[30];
  13.   char telefono[10];
  14. }datos;
  15.  
  16. void escribir()
  17. {
  18.   pfile=fopen("persona.dat","ab+");
  19.  
  20.   clrscr();
  21.   cout << "DATOS PERSONALES\n\n";
  22.   cout << "\nNombre: "; cin >> datos.nombre;
  23.   cout << "\nEdad: "; cin >> datos.edad;
  24.   cout << "\nDireccion: "; cin >> datos.direccion;
  25.   cout << "\nTelefono: "; cin >> datos.telefono;
  26.   fwrite(&datos,sizeof(datos),1,pfile);
  27.   fclose(pfile);
  28. }
  29.  
  30. void leer()
  31. {
  32.   pfile=fopen("persona.dat","rb");
  33.   clrscr();
  34.   cout << "DATOS PERSONALES\n\n";
  35.   cout << "\nNombre\t\tEdad\tDirecci¢n\t\tTelefono";
  36.  
  37.   fread(&datos,sizeof(datos),1,pfile);
  38.   while(!feof(pfile))
  39.   {
  40.     cout << "\n" << datos.nombre << "\t\t" << datos.edad << "\t"
  41.      <<datos.direccion << "\t\t\t" << datos.telefono;
  42.     fread(&datos,sizeof(datos),1,pfile);
  43.   }
  44.   fclose(pfile);
  45.   getch();
  46. }
  47.  
  48. void menu()
  49. {
  50.   char key;
  51.  
  52.   do
  53.   {
  54.     clrscr();
  55.     cout << "\t\t\t\tMENU PRINCIPAL";
  56.     cout << "\n\t\t\t[1] INGRESAR";
  57.     cout << "\n\t\t\t[2] LISTAR";
  58.     cout << "\n\t\t\t[3] SALIR";
  59.     cout << "\n\n\t\t\tOPCION:";
  60.     key=getche();
  61.     switch(key)
  62.     {
  63.       case '1': escribir(); break;
  64.       case '2': leer();
  65.     }
  66.   }while(key!='3');
  67. }
  68.  
  69. void main()
  70. {
  71.   menu();
  72. }
__________________
En programación hay mil y un formas de hacer lo mismo...