O problema é o seguinte :
Devo construir um sisteminha que alimente 2 registros e os salve em arquivos separados, quando o sistema for aberto novamente deve-se realimenta-lo com o que foi salvo no arquivo, a melhor alternativa que achei para isso foi salvar o arquivo em BINARIO !
O problema é que ele naum alimenta corretamente, será que eu fiz algo errado ?
seguem abaixo as partes do código !
***[ GRAVACAO DO ARQUIVO ]***
#define MAX_DADOS 100 #define MAX_PROFI 30 ... char LocDados[] = "C:\\FUNC.TXT"; char LocProfi[] = "C:\\PROFI.TXT"; ... int SalvarDados(){ FILE *Fp; if((Fp = fopen(LocDados, "ab+")) == NULL){ return FALSE; } fwrite(&Cad, sizeof(struct Dados), MAX_DADOS, Fp); fclose(Fp); return TRUE; } int SalvarProfi(){ FILE *Fp; if((Fp = fopen(LocProfi, "ab+")) == NULL){ return FALSE; } fwrite(&Profi, sizeof(struct Profi), MAX_PROFI, Fp); fclose(Fp); return TRUE; }
***[ ABERTURA DO ARQUIVO ]***
void IniciarDados(){ FILE *Fp; Tam = ProcurarDados(); Fp = fopen(LocDados, "rb+"); fread(&Cad, sizeof(struct Dados), MAX_DADOS, Fp); } void IniciarProfi(){ FILE *Fp; Fp = fopen(LocProfi, "rb+"); Tam = ProcurarProfi(); fread(&Profi, sizeof(struct Profi), MAX_PROFI, Fp); }
[]´s
Diogo Cezar Teixeira Batista