newsf
2004-04-27 09:33:20 UTC
Buenas grupo,
estoy leyendo un fichero, y quiero que salte las líneas que estan en
blanco. He hecho un programa, pero no doy con el caracter necesario:
#include <stdio.h>
#include <string.h>
main ()
{
FILE *f_in;
char *leido;
if ((f_in = fopen ("borrar.txt", "r")) == NULL)
{
printf ("Error de apertura del fichero entrada.txt\n");
exit (1);
}
if((leido = (char *)malloc(10 * sizeof(char))) == NULL)
{
printf ("No hay mas memoria en el Heap");
exit(1);
}
do
{
fgets(leido,10,f_in);
if (leido != "\n") printf ("%s", leido);
}while (feof(f_in) == 0);
}
En el fichero borrar.txt está el siguiente contenido:
aa
bb
Quiere que la salida sea:
aa
bb
y me da la salida:
aa
bb
¿Alguién me puede decir como identificar es línea en blanco?. Si la línea en
blando fuese la última del fichero, ¿se identificará de la misma forma?.
Gracias,
Fernando
estoy leyendo un fichero, y quiero que salte las líneas que estan en
blanco. He hecho un programa, pero no doy con el caracter necesario:
#include <stdio.h>
#include <string.h>
main ()
{
FILE *f_in;
char *leido;
if ((f_in = fopen ("borrar.txt", "r")) == NULL)
{
printf ("Error de apertura del fichero entrada.txt\n");
exit (1);
}
if((leido = (char *)malloc(10 * sizeof(char))) == NULL)
{
printf ("No hay mas memoria en el Heap");
exit(1);
}
do
{
fgets(leido,10,f_in);
if (leido != "\n") printf ("%s", leido);
}while (feof(f_in) == 0);
}
En el fichero borrar.txt está el siguiente contenido:
aa
bb
Quiere que la salida sea:
aa
bb
y me da la salida:
aa
bb
¿Alguién me puede decir como identificar es línea en blanco?. Si la línea en
blando fuese la última del fichero, ¿se identificará de la misma forma?.
Gracias,
Fernando