06/03/2015, 08:46
|
| | Fecha de Ingreso: febrero-2015
Mensajes: 404
Antigüedad: 9 años, 10 meses Puntos: 3 | |
Respuesta: Emoticones en vez de Numeros y buscar elementos A ver, lo que quieres hacer es leer un registro de un archivo secuencial, ya que usas una estructura para escribir en el archivo y cada registro midira lo mismo.
Te explico como hacerlo:
1-Abres el archivo con fopen.
2-Obtienes su tamaño en bytes con fseek y ftell.
3-Divides el tamaño del archivo por el tamaño de la estructura (tamFile / sizeof(sRegistro)).
4-Ahora por ejemplo ya podrias indicar el numero del registro a mostrar, o sea, puedes indicar si quieres mostrar el registro 3, o el 4 o el que sea. Para ello usas fseek ( pFile , sizeof(sRegistro) * pos , SEEK_SET ) donde "pos" sería el indice y siendo el primero 0. Luego usas fread para leer 1 registro y obtendrás el que indicaste con el indice.
5-Cierras el archivo con fclose.
Si lo que quieres es buscar un nombre pues es tan simple como usar lo mismo de arriba pero en un bucle que vaya leyendo todos los registros y vas comparando el nombre indicado con el de cada registro hasta que lo encuentres o hasta que llegues al final del archivo. Para saber si llegas al final usas foef. Para comparar usa strcmp o strncmp.
Si deseas buscar una cadena dentro de un nombre debes usar strstr el cual busca una cadena dentro de otra y así podrias mostrar por ejemplo todos los registros que contengan esa cadena en el nombre. Si no das con como hacerlo avisa. |