• Viernes 8 de Noviembre de 2024, 15:54

Autor Tema:  archivos dentro de clases  (Leído 1189 veces)

steel00

  • Nuevo Miembro
  • *
  • Mensajes: 4
    • Ver Perfil
archivos dentro de clases
« en: Martes 21 de Abril de 2009, 07:31 »
0
Hola...

Bueno vengo a ustedes porque tengo un problema, la verdad es que tengo el siguiente codigo:

Citar
int CWorker::BuscaArchivo(AnsiString dni)
{

        strcpy(AuxDNI,dni.c_str());
        strcat(AuxDNI,".dat");

        FILE *Arch;
        Arch = fopen(AuxDNI,"r");
        if(Arch == NULL)
                return 0;

        fseek(Arch,sizeof(WORKER), SEEK_SET);
        fread(&worker,sizeof(WORKER),1,Arch);

        fclose(Arch);

        return 1;
}

Lo que hace es recibir un AnsiString dni desde el formulario para que ese se copie a mi variable auxiliar AuxDNI y luego se concatene con ".dat", bueno lo que supuestamente debe hacer este codigo es leer el archivo AuxDNI y que todo lo que esta dentro se copie a worker. Ahora, worker es una estructura tipo WORKER:

Citar
typedef struct
{
   AnsiString DNI,Nombre,ApellidoP,ApellidoM,Brevete,Otros;
}WORKER;

y esta estructura esta en la parte privada de mi Clase CWorker. Lo que supuestamente deberia hacer es leer la info del archivo, pasarlo a la estructura y asi poder usar la info en el formulario por medio de mi clase, pero el problema es que mi structura no se esta llenando de info, sino que todas aparecen con NULL. Por lo que no puedo manejar la info dentro del formulario.

Podrian revisar el codigo y ver que anda mal... hace como 2 horas que busco la solucion y la verdad es que ya es medio tarde.

Ah me olvidaba si por ahi saben como crear una carpeta oculta agradeceria mucho que me dieran la funcion o como seria el codigo para poder implementarlo.

Saludos :)

Eternal Idol

  • Moderador
  • ******
  • Mensajes: 4696
  • Nacionalidad: ar
    • Ver Perfil
Re: archivos dentro de clases
« Respuesta #1 en: Martes 21 de Abril de 2009, 08:11 »
0
No lo vi en profundidad pero me parece que estas tratando de escribir AnsiString's en un archivo, te recomiendo que escribas arrays de char de tamaño fijo para empezar.

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.

steel00

  • Nuevo Miembro
  • *
  • Mensajes: 4
    • Ver Perfil
Re: archivos dentro de clases
« Respuesta #2 en: Martes 21 de Abril de 2009, 19:02 »
0
Claro, estoy escribiendo AnsiString dentro de un archivo binario... cuando el archivo era de texto, los AnsiString si se llenaban con data, pero ahora que guardo la informacion en archivo binario, los AnsiString se llenan con NULL