SoloCodigo

Programación General => C/C++ => Mensaje iniciado por: delpa en Domingo 3 de Marzo de 2002, 16:13

Título: Re: la sentencia fwrite
Publicado por: delpa en Domingo 3 de Marzo de 2002, 16:13
Alguien me puede poner un ejemplito que me copie una estructura a un fichero, en modo de txto o binario me da igual.
Muchas gracias.
Título: Re: la sentencia fwrite
Publicado por: tenesor en Domingo 3 de Marzo de 2002, 18:34
Vamos a ver si esto te aclara las cosas...

Ok, en el caso de fwrite tienes que pasarle

  - El puntero
  - Tamaño (con el sizeof(estructura) sirve:))
  - El numero de bloques que quieres copiar
  - El puntero descriptivo del archivo

Por ejemplo:
fwrite(&cliente, sizeof(registro), 1, fichero);

Donde cliente es la direccion del bloque, sizeof(registro) es el tamaño del bloque, 1 es el numero de bloques que se desea transferir y fichero es el puntero descriptivo del archivo (que apunta, por ejemplo, a "datos.dat")

Luego, para leer los datos es igual.

por ejemplo:
fread(&cliente, sizeof(registro), 1, fichero);

En este caso, cargarias en "cliente" el bloque de datos "1" del archivo "fichero".

Te sacó esto de dudas? espero que si.

Saludos,
  Tenesor
Título: Re: la sentencia fwrite
Publicado por: delpa en Martes 5 de Marzo de 2002, 21:32
Po zi, con un poco de practica me salio, por cierto como seria para poder abrir un fichero para escritura, pero si luego quiero leerlo, poder hacerlo tambien??? He probado poniendo "w+" en fopen pero no me va, porque puede ser??
Título: Re: la sentencia fwrite
Publicado por: tenesor en Miércoles 6 de Marzo de 2002, 01:46
Hola, aqui te dejo una tabla que tenia por ahi. Esta sacado del tutorial de "Aprenda C como si estuviera en primero". Muy bueno.


     Modo texto

   w   crea un fichero de escritura. Si ya existe lo crea de nuevo.
   w+   crea un fichero de lectura y escritura. Si ya existe lo crea de nuevo.
   a   abre o crea un fichero para añadir datos al final del mismo.
   a+   abre o crea un fichero para leer y añadir datos al final del mismo.
   r   abre un fichero de lectura.
   r+   abre un fichero de lectura y escritura.



     Modo binario

   wb   crea un fichero de escritura. Si ya existe lo crea de nuevo.
   w+b   crea un fichero de lectura y escritura. Si ya existe lo crea de nuevo.
   ab   abre o crea un fichero para añadir datos al final del mismo.
   a+b   abre o crea un fichero para leer y añadir datos al final del mismo.
   rb   abre un fichero de lectura.
   r+b   abre un fichero de lectura y escritura.



Estas tablas viene bien tenerlas siempre a mano (como la del ASCII:D)...

Saludos,
  Tenesor
Título: la sentencia fwrite
Publicado por: ibito en Sábado 25 de Mayo de 2002, 18:19
como podria hacer una pequeña base de datos?
por ejemplo q agruegue campos (q serian las estructuras), borre y modifique... en pocas palabras "altas, bajas y modificaciones".



Gracias