Foros del Web » Programación para mayores de 30 ;) » C/C++ »

Estructura con archivos

Estas en el tema de Estructura con archivos en el foro de C/C++ en Foros del Web. 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 ...
  #1 (permalink)  
Antiguo 20/11/2007, 14:55
Avatar de Mayacker  
Fecha de Ingreso: septiembre-2007
Mensajes: 23
Antigüedad: 17 años, 2 meses
Puntos: 0
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();
}

}
  #2 (permalink)  
Antiguo 25/11/2007, 18:22
 
Fecha de Ingreso: noviembre-2007
Mensajes: 37
Antigüedad: 17 años
Puntos: 0
Re: Estructura con archivos

OE BROTHER......YO USO C++... Y ASI SERIA!!!

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

void crear();

struct libros {
char id[10];
char cantidade[3];
char autor[40];
char nomlibro[40];
char tema1[30];
char tema2[30];
}datos[100]; // estas declarando un maximo de 100 libros.....ya no es necesario, en un archivo

void crear()
{
F=fopen("c:ibros.txt","w"); // c:libros.txt - es al direccion en donde vas a guardar tu archivo - y "w" es el modo en k abres el archivo , en ete caso es en modo escritura - te crea un archvivo vacio!!!
if(F==NULL)
{
cout<<"ERROR AL CREAR ARCHIVO"; exit(1); }
else
{ cout<<"CREACION SATISFACTORIA"; }
}

FILE *L //archivo - variable global
libros l; // declaracion de la struct // variable global

int main()
{
char rpta[1];
strcpy(rpta,"S");
int i;
int j;
do
{
clrscr();
cout<<"Posicion "<<i<<endl;
cout << "Introduzca ID del libro: "; gets(l.id); //investiga lo de gets y cin
cout << "Introduzca Nombre del libro: "; gets(l.nomlibro);
cout << "Introduzca Autor: " ; gets(l.autor);
cout << "Introduzca Tema 1: "; gets(l.tema1);
cout << "Introduzca Tema 2: "; gets(l.tema2);
cout << "Introduzca Cantidad Existente: "; gets(l.cantidade);
cout << "iNGRESAR OTRO EJEMPLAR: "; gets(rpta);
i++; // ya no es necesario ya que una rchivo guarda dato por dato, en este caso te va a guardar los campos de la estructura una por una.....luego va a al otra estructura y te guarda esos campos....los que ingresas!!!
L=fopen("c:libros.txt","a"); // investiga los modos de lectura de un file
fwrite=(&l,sizeof(l),1,L);
if(ferror(L))
{ cout<<"Error de escritura en archivo LIBROS"<<endl;
exit(1);}
fclose(L); //cerrar el archivo!!! - ya k en cada itearacion se vuelva abrir.. y la estrcutura ocupa el lado contiguo en el file!!
ademas lo puedes visualizar en forma de un block de notas..........en la direcicon donde lo guardaste!!

} while (strcmp(rpta,"s")==0||strcmp(rpta,"S")==0);
getch();
}

}

listo...........y con eso lo consigues...pero busca info al respecto .. es un poko COMLICADO AL PRINCIPIO......PERO LUEGO ES SUPER PIXANGA!!!
ALAMOX!!!!!!!!!
  #3 (permalink)  
Antiguo 26/11/2007, 08:29
Avatar de Mayacker  
Fecha de Ingreso: septiembre-2007
Mensajes: 23
Antigüedad: 17 años, 2 meses
Puntos: 0
Re: Estructura con archivos

INVINCIBLE Gracias Amigo Gracias!!!! me estoy documentando acerca de esto. gracias
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas (incluyéndote)




La zona horaria es GMT -6. Ahora son las 13:57.