C/Visual C - ARchivos indexados en C++

 
Vista:
sin imagen de perfil

ARchivos indexados en C++

Publicado por GGtop (15 intervenciones) el 21/04/2003 16:11:55
recuerdan COBOL!!? PUES es un lenguaje que podias crear archivos aleatorios e indexarlos con una simple instruccion.

LA PREGUNTA DEL MILLON SI ALGUNO SABE COMO INDEXAR ARCHIVOS EN C++ PORFAVOR ENVIAR UN CODIGO DE EJEMPLO (entendible)

no olvides escribir a :[email protected]
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:ARchivos indexados en C++

Publicado por chuidiang (677 intervenciones) el 21/04/2003 17:23:03
Que yo sepa, C/C++ no dan soporte directo para archivos indexados. Tienes que hacertelos tú.
Te puede ser de utilidad la funcion fseek(), que te lleva directamente a una posición del fichero, y a partir de ahí leer, por ejemplo, con fread() la estructura que te interese, o escribirla con fwrite()
Si A es tu esctructura y su tamaño es sizeof(A), harías

fich = fopen("fichero", "r");

/* ir a posicion n y leer */
fseek (fich, n*sizeof(A), SEEK_SET);
fread (&datoTipoA, sizeof(A), 1, fich);

Todo esto es C de unix. Si tienes visual c++ imagino que es similar.

C/C++ no comprueban si te pasas del fin de fichero. Yendo con fseek() a final de fichero fseek(fich, 0, SEEK_END) y luego obteniendo la posición con posicion=ftell(fich), obtienes el numero de bytes del fichero.
Dividiendo entre sizeof(A) sabes el numero de estructuras que hay escritas.

Se bueno.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar