Hola buenas.
Tengo algunos problemillas a la hora de leer (en C) información de archivos de texto.
Digamos que tendría un archivo con el siguiente formato
/**/
Nombre: aaa
Direccion: bbb
Telefono: ccc
/**/
Nombre: jjj
Dirección: sss
Telefono: aaa
/**/
.
.
.
Y así por ejemplo hasta 6 registros.
Mi pregunta es la siguiente. ¿Cómo podría hacer para leer cada registro de forma eficiente teniendo en cuenta que tengo que hacer un filtrado de los contactos para verificar que el nº de telefono es correcto?
Esto es lo que se me ocurre:
Leer linea a linea y cada una de ellas particionarla con un strtok(linea,:*) y de esta manera poder separar cada palabra. La info la metería en un struct contacto formado por nombre, direccion y telefono. Entonces ya podría verificar el numero de telefono.
Qué otras soluciones se os ocurren o qué funciones me recomendaríais para facilitar el recorrido del fichero.
También me surge otra duda. ¿Es posible que un fichero lo puedas empezar a leer desde la mitad por ejemplo? Es decir, imaginaros que quiero dejar una marca en mitad del fichero para luego volver a abrirlo y empezar a leer desde ahí. ¿Eso es posible?
Un saludo a todos y gracias de ante mano.
Tengo algunos problemillas a la hora de leer (en C) información de archivos de texto.
Digamos que tendría un archivo con el siguiente formato
/**/
Nombre: aaa
Direccion: bbb
Telefono: ccc
/**/
Nombre: jjj
Dirección: sss
Telefono: aaa
/**/
.
.
.
Y así por ejemplo hasta 6 registros.
Mi pregunta es la siguiente. ¿Cómo podría hacer para leer cada registro de forma eficiente teniendo en cuenta que tengo que hacer un filtrado de los contactos para verificar que el nº de telefono es correcto?
Esto es lo que se me ocurre:
Leer linea a linea y cada una de ellas particionarla con un strtok(linea,:*) y de esta manera poder separar cada palabra. La info la metería en un struct contacto formado por nombre, direccion y telefono. Entonces ya podría verificar el numero de telefono.
Qué otras soluciones se os ocurren o qué funciones me recomendaríais para facilitar el recorrido del fichero.
También me surge otra duda. ¿Es posible que un fichero lo puedas empezar a leer desde la mitad por ejemplo? Es decir, imaginaros que quiero dejar una marca en mitad del fichero para luego volver a abrirlo y empezar a leer desde ahí. ¿Eso es posible?
Un saludo a todos y gracias de ante mano.