[C con Clase] Mis problemas con los ficheros

José María Nevárez chemanev en gmail.com
Mar Oct 7 20:58:37 CEST 2008


Porque no intentas abriendo el fichero así:

fDatos=fopen(fichero,"a+b");

probablemente te funcione.



El 6 de octubre de 2008 12:58, Juan Antonio Rubio <RubioJA52 en yahoo.es>escribió:

>  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;
> }
>
> _______________________________________________
> Lista de correo Cconclase Cconclase en listas.conclase.net
> http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net
> Bajas: http://listas.conclase.net/index.php?gid=2&mnu=FAQ
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.conclase.net/pipermail/cconclase_listas.conclase.net/attachments/20081007/080bf99c/attachment.html>


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