/*;*/ void filebackup(char filename_org[257],char new_real_mass_filename[257]){ /* == BACKUP ===================================================;*/ int i; /*Remove \n code;*/ for (i=0;i<=20;i++){ if (filename_org[i]=='\n'){filename_org[i]='\0';} if(new_real_mass_filename[i]=='\n'){new_real_mass_filename[i]='\0';} } char filename_bak[257]; strcpy(filename_bak,filename_org); for (i=0;filename_org[i]!='\0';i++) { /* make filename_bak unique.bak;*/ if(filename_org[i]=='.') { filename_bak[i+1]='b'; /*filename_bak[]='';*/ filename_bak[i+2]='a' ; filename_bak[i+3]='k' ; goto escape; } } printf("Cannot Back up without filename.??? style.\n"); /*fault make backup for not *.??? style;*/ printf("\n"); printf("Old file :%s\n",filename_org); printf("New file :%s\n",new_real_mass_filename); exit(1); /*=====================;*/ escape:; /*=====================;*/ char buf[257]; FILE *read_fp; FILE *read2fp; if (((read_fp=fopen(filename_org,"r"))!=NULL)&&((read2fp=fopen(new_real_mass_filename,"r"))!=NULL)) { fclose(read_fp); fclose(read2fp); remove(filename_bak); rename(filename_org,filename_bak); remove(filename_org); rename(new_real_mass_filename,filename_org); printf("Backup Succeeded.\n\n"); printf("Old file %s\nNew file %s\n",filename_bak,filename_org); } else { printf("Backup fault. Please check \n\n"); printf("Old file %s\nNew file %s\n",filename_org,new_real_mass_filename); exit(1); } /*==Old Logic================================================================; FILE *read_fp; FILE *writefp; int noexist; noexist=0; /*remove(filename_bak); if((read_fp=fopen(filename_org,"r"))==NULL){noexist=1;goto escape2;}; writefp=fopen(filename_bak,"w"); while((fgets(buf,256,read_fp)!=NULL)){fputs(buf,writefp);} fclose(writefp); fclose(read_fp); /*remove(filename_org); if((read_fp=fopen(new_real_mass_filename,"r"))==NULL){noexist=1;goto escape2;} while((fgets(buf,256,read_fp)!=NULL)){fputs(buf,writefp);} writefp=fopen(filename_org,"w"); fclose(writefp); fclose(read_fp); escape2:; if(noexist==0){printf("Backup Succeeded.\n");}; if(noexist==1){printf("Backup fault. Please check \n\n"); printf("%s \n%s \n",filename_org,new_real_mass_filename);} =======================================================================;*/ } /*============================================================================;*/