Beim Lesen einer Datei schreiben in derselben Datei?

Habe ich es geschafft, eine Datei zu öffnen und zu Lesen beim schreiben in eine andere Datei mit var=fopen(file,"r") /"w" aber auch mit r+ oder w+ veralteten ich kann nicht öffnen Sie eine Datei und dessen Inhalt ändern.

: Stell dir vor,

int formatacao (char original[]){/*se a cadeia nao tiver escrita em maiusculas, esta funçao vai alteralas para tal*/
    int val1;
    FILE * original_open;

    original_open = fopen (original,"r+");

    if (original_open==0){
       printf ("ficheiro %c 1.",original);
    }


    while ((val1=fgetc(original_open))!=EOF){
          if (val1>='a'&&val1<='z'&&val1){
             fputc(val1-32,original_open);
          }
          else 
          fputc(val1,original_open);
    }

    fclose (original_open);
    return (0);
}

Code funktioniert, kein Fehler, keine Warnung, nur das problem ist: es löscht den Inhalt der Datei wenn ich es so zu benutzen, ABER das funktioniert:

int main (){
    int val1,val2,nr=0;
    FILE* fp1;
    FILE* fp2;
    fp1=fopen ("DNAexample.txt","r");
    fp2=fopen ("DNAexample1.txt","w");
    if (fp1==0){
       printf ("EPIC FAIL no 1.\n");
    }
    while ((val1=fgetc(fp1))!=EOF){
          if (val1>='a'&&val1<='z'&&val1){
             fputc(val1-32,fp2);
          }
          else 
          fputc(val1,fp2);
    }


    fclose (fp1);
    fclose (fp2);
    return (0);
}

Einwandfrei! Wie kann ich eine Datei öffnen, Lesen char durch char und entscheiden, ob ich mich ändern will den char oder nicht?

InformationsquelleAutor DaRk_f0x | 2011-04-26

Schreibe einen Kommentar