incluir registros en un fichero
hola!
intento incluir un registro con dos campos, char y float, en un fichero pero no sé por qué, en dicho fichero aparece esto:
------------------------------------
pedro ®Àw ƒÄ…öu A
juan ®Àw ƒÄ…öu @@
------------------------------------
La foma de hacerlo es: fwrite (&dat, sizeof (dat), 1, pf);
dat es la variable relacionada con el registro, pf el vinculo al fichero. El uno no se porque lo pongo pero sino lo hago no funciona ;)
intento incluir un registro con dos campos, char y float, en un fichero pero no sé por qué, en dicho fichero aparece esto:
------------------------------------
pedro ®Àw ƒÄ…öu A
juan ®Àw ƒÄ…öu @@
------------------------------------
La foma de hacerlo es: fwrite (&dat, sizeof (dat), 1, pf);
dat es la variable relacionada con el registro, pf el vinculo al fichero. El uno no se porque lo pongo pero sino lo hago no funciona ;)
Hola:
Eso es normal. Lo que ves en el fichero es la estructura interna de tus datos.
Si tu estructura dat es algo como esto
struct dat
{
char [10] nombre;
float valor
}
en el fichero se escribiran 10 caracteres, en tu caso "pedro" mas un caracter cuyo codigo ascii es 0 mas otros 4 indefinidos (pueden ser 4 de los caracteres extraños que tienes ahi).
Luego se escribe el float, que son 4 bytes (4 caracteres) que no tienen sentido.
La forma de comprobar si eso es correcto es leerlo con fread() sobre la misma estructura y ver si se lee bien.
Se bueno.
Eso es normal. Lo que ves en el fichero es la estructura interna de tus datos.
Si tu estructura dat es algo como esto
struct dat
{
char [10] nombre;
float valor
}
en el fichero se escribiran 10 caracteres, en tu caso "pedro" mas un caracter cuyo codigo ascii es 0 mas otros 4 indefinidos (pueden ser 4 de los caracteres extraños que tienes ahi).
Luego se escribe el float, que son 4 bytes (4 caracteres) que no tienen sentido.
La forma de comprobar si eso es correcto es leerlo con fread() sobre la misma estructura y ver si se lee bien.
Se bueno.