В моем программном обеспечении мне приходится последовательно читать несколько баз данных txt, поэтому я читаю первую, затем что-то делаю с информацией, полученной из этого файла, затем открываю другую для записи и так далее. .
Иногда я получал ошибку при открытии ИЛИ создании файла, а затем я получал ошибки при всех последующих открытиях/созданиях, которые используют разные функции, разные переменные, разные файлы.
Так, например, я вызываю функцию ниже, которая использует два файла, и я получаю сообщение об ошибке «* ошибка при открытии файла -%s- ..\n», тогда все остальные функции fopen() в моем коде работают неправильно !
Это пример кода для одного файла:
FILE *filea;
if((filea=fopen(databaseTmp, "rb"))==NULL) {
printf("* error while opening file -%s- ..\n",databaseTmp);
fclose (filea);
printf("---------- createDatabaseBackup ----------\n");
return -1;
}
int emptyFolder=1;
FILE *fileb;
if((fileb=fopen(databaseBackup, "ab"))==NULL) {
printf("* error while opening file -%s- ..\n",databaseBackup);
fclose (fileb);
printf("---------- createDatabaseBackup ----------\n");
return -1;
}
else {
int i=0;
char c[500]="";
for (i=0;fgets(c,500,filea);i++) {
fprintf(fileb,"%s",c);
emptyFolder=0;
}
}
fclose(fileb);
fclose(filea);