Datei im Binärmodus bearbeiten



  • Hallo zusammen,

    wie kann ich eine Datei im Binärmodus öffnen, lesen und schreiben. Die Anwendung ist recht einfach, muss aber bullet-proof sein:

    1. Binärdatei öffnen
    2. Inhalt in ein Array vom Typ signed short speichern (300000 Elemente)
    3. Alle Elemente im short Array durch zwei dividieren (nur um mal nen Algo zu sehen)
    4. Gesamtes Array in eine neue Binärdatei, gleiches Format (short), zurückschreiben..
    

    In einschlägiger Literatur wird immer nur Text Ein- und Ausgabe behandelt.

    Vielen Dank für Eure Hilfe! 👍



  • Schritt 1: Beim Öffnen gibst du als Modus "rb" bzw. "wb" an (das b steht für "binär").

    Schritt 2: Daten binär einlesen kannst du mit fread(), schreiben mit fwrite().

    //1.
    FILE* input=fopen("input.bin","rb");
    //2.
    short data[ARRAY_LEN];
    int in_count=fread(data,sizeof(short),ARRAY_LEN,input)
    //3.
    for(int i=0;i<in_count;++i) data[i]/=2;
    //4.
    FILE* output=fopen("output.bin","wb");
    fwrite(data,sizeof(short),in_count,output);
    
    //Aufräumen:
    fclose(input);fclose(output);
    


  • vielen Dank!


Anmelden zum Antworten