• Domingo 28 de Abril de 2024, 22:28

Autor Tema:  Problema Al Leer Un Fichero De Texto  (Leído 1188 veces)

giropau

  • Nuevo Miembro
  • *
  • Mensajes: 23
    • Ver Perfil
Problema Al Leer Un Fichero De Texto
« en: Miércoles 26 de Septiembre de 2007, 01:24 »
0
Hola, tengo un problemilla. Quiero leer un fitchero de texto plano pero no se porque leo mas de la cuenta y me llena el buffer con cosas que no quiero. Uso fopen y fread. Aqui os pongo el codigo.

Código: Text
  1.  
  2.         char* buff;
  3.         FILE *cam = fopen("cameres.txt","r");
  4.         fseek(cam,0,SEEK_END);
  5.         int tam = ftell(cam); //calculo el tamañño del fichero
  6.         fseek(cam,0,SEEK_SET);//vuelvo al principio
  7.         buff = (char*)malloc(tam);//reservo memoria
  8.         fread(buff,1,tam,cam); //leo el fichero
  9.  
  10.  

el el buffer buff se guardan unos cuantos bytes mas de los que quiero. Lo que se guarda de mas no es nada. No he encontrado el problema, seguro que es una tonteria pero a veces passa que nos quedamos atascados con tonterias xDD. Gracias por cualquier ayuda. Saludos.

Eternal Idol

  • Moderador
  • ******
  • Mensajes: 4696
  • Nacionalidad: ar
    • Ver Perfil
Re: Problema Al Leer Un Fichero De Texto
« Respuesta #1 en: Miércoles 26 de Septiembre de 2007, 09:19 »
0
Inicializa la memoria a ceros (ZeroMemory o memset) y despues fijate donde empieza la parte mala, si es que realmente la hay.

Nacional y Popular En mi país la bandera de Eva es inmortal.


Queremos una Argentina socialmente justa, económicamente libre y  políticamente soberana.
¡Perón cumple, Evita dignifica!


La mano invisible del mercado me robo la billetera.

giropau

  • Nuevo Miembro
  • *
  • Mensajes: 23
    • Ver Perfil
Re: Problema Al Leer Un Fichero De Texto
« Respuesta #2 en: Miércoles 26 de Septiembre de 2007, 10:28 »
0
Pues con ZeroMemory después del malloc funciona bien. El buffer solo contiene lo que tiene que tener. Muchas gracias.

Eternal Idol

  • Moderador
  • ******
  • Mensajes: 4696
  • Nacionalidad: ar
    • Ver Perfil
Re: Problema Al Leer Un Fichero De Texto
« Respuesta #3 en: Miércoles 26 de Septiembre de 2007, 11:18 »
0
De nadas  B)

Nacional y Popular En mi país la bandera de Eva es inmortal.


Queremos una Argentina socialmente justa, económicamente libre y  políticamente soberana.
¡Perón cumple, Evita dignifica!


La mano invisible del mercado me robo la billetera.