Hola gente escribo aca por un problema que tengo con un trabajo para la facultad.
Tengo que hacer un catalogador de noticias, que levante de un directorio muchas noticias (archivos de texto) las meta en conjuntos, cree un indice de busqueda, etc etc
La parte importante, osea las estructuras de datos, los algoritmos de busqueda ya los hice y pareciera que esta todo bien, mi problema esta en la parte mas baja del programa, obtener la informacion de los archivos de texto.
Supuestamente es la parte mas facil y se espera que se haga con funciones simples.
Unos ejemplos de noticas:
<titulo>Article 900</titulo>
<etiquetas>business development free gallery maps mp3 programming recipes research statistics teaching wordpress </etiquetas>
<contenido>Aquí va el contenido...
.....................................................................
.....................................................................
.....................................................................
.....................................................................
</contenido>
<titulo>Article 906</titulo>
<etiquetas>environment,gallery,graphics,home,howto,humor </etiquetas>
<contenido>Aquí va el contenido...
.....................................................................
.....................................................................
.....................................................................
.....................................................................
</contenido>
La unica forma que se me ocurre es ir leyendo caracter por caracter con fgetc, mi problema viene para ir armando cadena cuyo tamaño final desconozco caracter por caracter??? despues deberia ver que dice la cadena, hacer mi trabajo, liberar la memoria esa para volver a almacenar otra cadena...
No me puedo imaginar ninguna forma de hacer esto correcta y prolijamente.
Toda la parte de algoritmia y eficiencia me encanta, pero estas cosas de laburo a bajo nivel con cadenas me dan ganas de suicidarme.
Alguna idea?
Porque yo ya tengo un tremendo dolor de cabeza!