/
Inicio :: Foros

 F.A.Q.F.A.Q.                  Conéctese para revisar sus mensajesConéctese para revisar sus mensajes   

Estructura con archivos

 
      Índice del Foro elrincondelc.com -> C/C++ en General
Ver tema anterior :: Ver siguiente tema  
AutorMensaje
Mayacker



Registrado: 16 Nov 2007
Mensajes: 9

MensajePublicado: 20/11/2007 1:15 pm
Título: Estructura con archivos

compañeros quiero guardar los datos de la estructura en un archivo ... qu tengo que hacer, estoy usando el compilador borland c++ este es mi codigo :

Código:

#include <iostream.h>
#include <stdio.h>
#include <conio.h>
#include <string.h>
#include <ctype.h>

struct libros {
    char id[10];
    char cantidade[3];
    char autor[40];
    char nomlibro[40];
    char tema1[30];
    char tema2[30];
}datos[100];

int main()
{
    char op;
    int i;
    int j;
    do
    {
             clrscr();
              cout<<"Posicion  "<<i<<endl;
              cout << "Introduzca ID del libro: ";
               cin >>datos[i].id;
               cout << "Introduzca Nombre del libro: ";
              cin >>datos[i].nomlibro;
              cout << "Introduzca Autor: " ;
              cin >>datos[i].autor;
              cout << "Introduzca Tema 1: ";
               cin >>datos[i].tema1;
              cout << "Introduzca Tema 2: ";
               cin >>datos[i].tema2;
               cout << "Introduzca Cantidad Existente: ";
               cin >>datos[i].cantidade;
              cout << "Repetir: ";

               cin >>op;
              i++;
        } while (toupper(op) == 'S');
    getch();
}
Volver arriba
david_celta



Registrado: 02 Jun 2005
Mensajes: 161

MensajePublicado: 20/11/2007 5:02 pm
Título:

ofstream f("datos.txt");
//.....
f.write(&datos[i],sizeof(libros));
//....
f.close();

Mete esas tres lineas al programa, la primera antes del do, la segunda antes de i++ y la tercera despues de getch(), influye el fichero fstream.h en los include y cruza los dedos.
_________________
In all your fantasies,
you always knew
that man and mystery...

...were both in you...
Volver arriba
Mayacker



Registrado: 16 Nov 2007
Mensajes: 9

MensajePublicado: 20/11/2007 5:13 pm
Título:

gracias por tu ayuda david_celta pero me da error en:

Código:
    f.write(&datos[i],sizeof(libros));


erro: could not find a match for 'ostream:write(libros*,unsigned int);
Volver arriba
david_celta



Registrado: 02 Jun 2005
Mensajes: 161

MensajePublicado: 20/11/2007 5:57 pm
Título:

Reemplazala por

f.write((char*)&datos[i],sizeof(libros));

y prueba a ver que tal va esta vez
_________________
In all your fantasies,
you always knew
that man and mystery...

...were both in you...
Volver arriba
Mayacker



Registrado: 16 Nov 2007
Mensajes: 9

MensajePublicado: 20/11/2007 5:59 pm
Título:

Shocked gracias gracias david_celta faltaba el
Código:
(char*)
te agradezco !! saludos Very Happy
Volver arriba
      Índice del Foro elrincondelc.com -> C/C++ en General
Página 1 de 1Todas las horas están en GMT - 8 Horas

 
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas

(c) ElRincondelC.com

Un proyecto de UrlanHeat.com