[C con Clase] Mis problemas con los ficheros

Juan Antonio Rubio RubioJA52 en yahoo.es
Lun Oct 6 20:58:43 CEST 2008


Hola a todos,

   Siguiendo con mis problemas con los archivos, estoy intentando que me
abra una archivo cuando exista y que lo cree cuando no existe.

   Tengo el ejemplo de abajo, y estoy observando que SIEMPRE me lo crea
y me graba el registro.

   Supongo que sabreis porque me pasa esto, supongo que estaré haciendo
alguna burrada que no soy capaz de ver.

   Muchas gracias.

Juan Antonio.

  

#include <iostream>
#include <stdio.h>
#include <stdlib.h>

using namespace std;

int RutinaFichero()
{
   char rDatos[]="elemento primero";
   char fichero[]="s:\\archivo.dat";
   FILE *fDatos;

   fDatos=fopen(fichero,"rb+");       // Lectura y escritura
binario...no lo crea
   if(!fDatos)                                  // Si no existe...
   {
      fDatos=fopen(fichero,"wb+");    // Crea el archivo si no existe.
      fwrite(&rDatos,sizeof(rDatos),1,fDatos);
cout << "grabo el registro"<< endl;             // las dos veces pasa
por aqui...
   }
   fseek(fDatos, 1, SEEK_SET);
   fread(&rDatos,sizeof(rDatos),1,fDatos);
   fclose(fDatos);
   return 0;
}
int main()
{
   RutinaFichero();
   RutinaFichero();

   return 0;
}
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.conclase.net/pipermail/cconclase_listas.conclase.net/attachments/20081006/d67fa39d/attachment.html>


Más información sobre la lista de distribución Cconclase