C/Visual C - Ficheros y saltos de linea

 
Vista:

Ficheros y saltos de linea

Publicado por Sebas (28 intervenciones) el 21/05/2007 20:26:52
Hola a todos, Necesito en un programa contar las lineas que tiene, ademas de mostrar las palabras separadas por guiones.
Estoy utilizando la funcion fscanf que me lee palabra por palabra el fichero, pero el problema es que ignora blancos y saltos de linea. ¿Como puedo capturar los "\0" del fichero para contar las lineas?. Con fgets podria leer lineas completas pero entonces tendria que ir separando palabra a palabra. ¿Como lo veis para hacerlo de la manera mas facil?
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Ficheros y saltos de linea

Publicado por Nelek (816 intervenciones) el 22/05/2007 07:18:43
Hola

y por que no vas leyendo letra a letra y lo mas metiendo en un buffer? Comparas cada vez que lees un BYTE, si es un espacio, mandas lo que tengas hasta el momento a tu cadena "Frase", y si es un "\0" pues acabas la linea y vuelves a empezar.

O bien alternas, primero haces el fscanf y tomas la palabra completa, luego lees el caracter siguiente y compruebas si es un espacio o un \0 y haces lo que quieras con lo que has leido justo antes.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Ficheros y saltos de linea

Publicado por Tom (619 intervenciones) el 22/05/2007 14:29:54
¿ fscanf() ignora los blancos ? ¿ desde cuando ?
En el fichero, seguramente no hay ningún \0, no te canses.

Prueba con esto:

while(fscanf(fin, "%s%c", pp, &kk) > 0) {
printf("/%s(%c)/", pp, kk);
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar