C Academy · Lektion

Arbejde med binære filer

Forstå, hvordan ikke-tekstdata håndteres med fread og fwrite

Lektion 2 af 310 trin

Arbejde med binære filer er en gratis C Academy-lektion på CoddyKit. Dette er lektion 2 af 3. Du kan læse hele lektionen gratis nedenfor — og derefter øve dig praktisk i browseren med en indbygget kodeeditor og en AI-vejleder, der er tilgængelig døgnet rundt. Den er en del af læringsforløbet i C Academy, og dine fremskridt synkroniseres på tværs af nettet og CoddyKit-appen. C Academy-kurset indeholder 3 lektioner i alt.

Introduktion til binære filer

Arbejde med binære filer

Binære filer gemmer data i råformat, hvilket gør det muligt at læse og skrive effektivt uden at konvertere data til tekst.

I denne lektion lærer du:

  • Hvordan du skriver data til en binær fil ved hjælp af fwrite().
  • Hvordan du læser data fra en binær fil ved hjælp af fread().
  • Forskellen mellem binær filhåndtering og tekstfilhåndtering.
Arbejde med binære filer — illustration 1

Åbning af en binær fil

Binære filer åbnes ved hjælp af funktionen fopen() med en tilstand, der indeholder b.

Eksempel:

FILE *filePtr = fopen("data.bin", "wb");

Dette åbner data.bin til skrivning i binær tilstand.

Skrivning til en binær fil

Funktionen fwrite() skriver binære data til en fil.

Syntaks:

fwrite(&data, size, count, filePtr);

Eksempel:

fwrite(&num, sizeof(int), 1, filePtr);

Dette skriver et heltal til filen.

Eksempel: Skrivning til en binær fil

Dette program demonstrerer, hvordan man skriver et heltal til en binær fil.

#include <stdio.h>

int main() {
    FILE *filePtr = fopen("data.bin", "wb");
    if (filePtr == NULL) {
        printf("Error opening file!\n");
        return 1;
    }
    int num = 42;
    fwrite(&num, sizeof(int), 1, filePtr);
    fclose(filePtr);
    return 0;
}

Læsning fra en binær fil

Funktionen fread() læser binære data fra en fil.

Syntaks:

fread(&data, size, count, filePtr);

Eksempel:

fread(&num, sizeof(int), 1, filePtr);

Dette læser et heltal fra filen.

Eksempel: Læsning fra en binær fil

Dette program demonstrerer, hvordan man læser et heltal fra en binær fil.

#include <stdio.h>

int main() {
    FILE *filePtr = fopen("data.bin", "rb");
    if (filePtr == NULL) {
        printf("Error opening file!\n");
        return 1;
    }
    int num;
    fread(&num, sizeof(int), 1, filePtr);
    printf("Number read from file: %d\n", num);
    fclose(filePtr);
    return 0;
}

Tilføjelse til en binær fil

Brug tilstanden ab til at føje binære data til en fil:

FILE *filePtr = fopen("data.bin", "ab");

Dette bevarer de eksisterende data og tilføjer nye data i slutningen af filen.

Tekstfiler kontra binære filer

Tekstfiler:

  • Gemmer data som tegn, der kan læses af mennesker.
  • Bruger fprintf() og fscanf().

Binære filer:

  • Gemmer data i råformat.
  • Bruger fwrite() og fread().

Opsummering

I denne lektion lærte du:

  • Hvordan man skriver og læser binære filer ved hjælp af fwrite() og fread().
  • Forskellen mellem tekst- og binære filoperationer.
  • Hvordan man føjer binære data til en eksisterende fil.

Nu skal vi se nærmere på fejlhåndtering i filoperationer!

Arbejde med binære filer — illustration 10
Gratis at komme i gang

Lær C med en AI-underviser — gratis

Skriv og kør rigtig kode i din browser, få øjeblikkelig hjælp fra en AI-underviser døgnet rundt, og fortsæt, hvor du slap, på web eller i appen.

Kurser
39
Lektioner
144

Ofte stillede spørgsmål

Er lektionen “Arbejde med binære filer” gratis?

Ja — hele teksten til “Arbejde med binære filer” kan læses gratis her på nettet. Hvis du vil øve dig interaktivt med en indbygget kodeeditor og en AI-vejleder døgnet rundt og få adgang til resten af C Academy-kurset, skal du opgradere til CoddyKit PRO. C Academy-kurset indeholder 3 lektioner i alt.

Hvad lærer jeg i “Arbejde med binære filer”?

Forstå, hvordan ikke-tekstdata håndteres med fread og fwrite Du øver dig i C Academy med praktisk kode, som du kører direkte i browseren, og en AI-vejleder døgnet rundt besvarer dine spørgsmål, mens du arbejder dig gennem lektionen.

Skal jeg have erfaring for at begynde på C Academy?

Der kræves ingen tidligere erfaring. C Academy på CoddyKit er tilrettelagt for både begyndere og øvede, så du kan starte her eller fra begyndelsen og lære i dit eget tempo. Dette er lektion 2 af 3.

Hvor lang tid tager lektionen “Arbejde med binære filer”?

De fleste CoddyKit-lektioner tager cirka 5–10 minutter. Hver lektion er kort og interaktiv, så du gør løbende fremskridt og kan fortsætte, hvor du slap – på både web og app.

Kan jeg skrive og køre kode i denne C Academy-lektion?

Ja. Alle C Academy-lektioner har en indbygget kodeeditor, så du kan skrive og køre rigtig kode direkte i din browser og få øjeblikkelig feedback fra AI – uden lokal opsætning.

Alle lektioner i dette kursus

  1. Introduktion til filhåndtering
  2. Arbejde med binære filer
  3. Filfejlhåndtering
← Tilbage til C Academy