• Lunes 13 de Mayo de 2024, 15:49

Autor Tema:  [c] Problema Con Ficheros  (Leído 727 veces)

Eduardo83

  • Nuevo Miembro
  • *
  • Mensajes: 1
    • Ver Perfil
[c] Problema Con Ficheros
« en: Martes 31 de Julio de 2007, 00:10 »
0
Buenas noches, tengo un cierto problema con un programa en C, y necesito recorrerlo línea por línea, para que, en caso de que esa línea tenga dos caracteres, haga algo (en este caso copiarlo a otro fichero) y si no, pues nada; a ver, detallo un poco más el problema porque no voy a pegar todo el código en sí, se genera un fichero con caracteres en columnas de 2:
aa
ab

Pero a veces se da el caso de que hay columnas que no se cumplen, es decir:

%%
%/
%
(Aquí un espacio en blanco)
&%
&/
&
...

Quiero que se copien sólo las de dos (%%), observese lo pesado que soy insistiendo con eso, pero luego no quiero dudas por que esté mal explicado jeje, así que bien, aquí van las 3 líneas de código y a continuación su explicación:

while((fgets(linea,3,nuevo))!=EOF)
  if(strlen(linea)==2)
    fprintf(temporal,"%s\n",linea);

linea-> Array de 3 posición, los dos caracteres y el \0 claro.
nuevo-> Nombre lógico de un fichero abierto para lectura.
temporal-> Nombre lógico de un fichero abierto para escritura.

fprintf-> Sobran los comentarios creo...

Luego bien, eso no funciona, aparte de entrar en un bucle infinito, cosa que en lugar de EOF poner '\0' sigue sin encontrar el final (xD, mierda), no copia bien las lineas, genera dobles saltos de lina y solo copia un caracter, ¡porqué porqué!, necesito ayuda, espero que podais echarme una mano, ya que este foro parece serio de todos  los que he visto por google, así que, programadores y programadoras, si alguien puede echarme una mano se lo agradecería un monton :)

Un cordial saludo desde Málaga, Eduardo Ortega, ciao! y gracias :)