C/Visual C - Otra vez entero de fichero

 
Vista:

Otra vez entero de fichero

Publicado por Pablo (6 intervenciones) el 05/08/2004 14:09:34
Hola, ya escribí un post en referencia a este problema, pero la solución que me dieron, utilizar "fread(&INT,sizeof(int),1,MyFile)" siendo INT la variable donde almacenar el entero, MyFile el puntero al fichero, 1 el numero de enteros a reservar, no funciona. No se si es debido a mi compilador, o a q no se utilizrlo como es debido.
Alguien sabe alguna alternativa?, Alguna idea de porqué no me funciona??
Gracias.
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:Otra vez entero de fichero

Publicado por Nicolas (183 intervenciones) el 05/08/2004 14:29:20
Hola!!!!!!!!!!!!!!!!

El fread() se utiliza tal cual lo escribiste. Debes tener un problema antes segurmante con el fopen(). Por q no mandas mas codigo???

Salu2!!!!
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:Otra vez entero de fichero

Publicado por chuidiang (677 intervenciones) el 06/08/2004 15:43:26
Hola.

Lo primero es saber si el fichero es binario o de texto. Si lo editas con el "notepad" y se entienden los números, es de texto. Si ves caracteres raros, es binario.

Si es de texto, debes leerlo con fscanf(). Si es binario, puedes usar fread(), como te indicaron en el mensaje anterior.

Si es de texto (como parece que das a entender en el mensaje anterior), puedes leerlo con fscanf() de esta manera

fscanf (fichero, "%d", &variableEntera);

Se bueno.
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:Otra vez entero de fichero

Publicado por Nicolas (183 intervenciones) el 07/08/2004 20:32:21
Hola!!!!!!!!!

Si por ejemplo tuvieras q parsear todos los archivos de un directorio sin saber si son de tecto o binario, bajo WINDOWS podrias comprobar la extension del archivo (aunque no sea una implicancia en un 100 %) pero si estas bajo UNIX, las extensiones de los archivos no significan nada asi que una buena idea para saber si es un archivo de texto es esta:
lee la primer linea del arch usando fgets() hasta 4K de memoria. Si no se llena se puede decir q es de texto debido a q la probabilidad de q un arch de texto tenga en la primer linea 4K es casi nula.
Aclaro q esto les pueda parecer una animalada, pero creanme q cuando lo tuve q hacer, me sirvio y bastante

Salu2!!!!!
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