C Academy · leksjon

Arbeid med binærfiler

Forstå hvordan ikke-tekstbaserte data håndteres med fread og fwrite.

Leksjon 2 av 310 trinn

Arbeid med binærfiler er en gratis leksjon i C Academy på CoddyKit. Dette er leksjon 2 av 3. Du kan lese hele leksjonen gratis nedenfor – og deretter øve praktisk i nettleseren med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i C Academy, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i C Academy inneholder totalt 3 leksjoner.

Introduksjon til binærfiler

Arbeid med binærfiler

Binærfiler lagrer data i råformat. Det gjør det mulig å lese og skrive effektivt uten å konvertere dataene til tekst.

I denne leksjonen lærer du:

  • Hvordan du skriver data til en binærfil ved hjelp av fwrite().
  • Hvordan du leser data fra en binærfil ved hjelp av fread().
  • Forskjellen mellom binær filhåndtering og tekstfilhåndtering.
Arbeid med binærfiler — illustrasjon 1

Åpne en binærfil

Binærfiler åpnes ved hjelp av funksjonen fopen() med en modus som inneholder b.

Eksempel:

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

Dette åpner data.bin for skriving i binærmodus.

Skrive til en binærfil

Funksjonen fwrite() skriver binærdata til en fil.

Syntaks:

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

Eksempel:

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

Dette skriver et heltall til filen.

Eksempel: Skrive til en binærfil

Dette programmet viser hvordan et heltall skrives til en binærfil.

#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;
}

Lese fra en binærfil

Funksjonen fread() leser binærdata fra en fil.

Syntaks:

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

Eksempel:

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

Dette leser et heltall fra filen.

Eksempel: Lese fra en binærfil

Dette programmet viser hvordan et heltall leses fra en binærfil.

#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;
}

Legge til data i en binærfil

Bruk modusen ab for å legge binærdata til i en fil:

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

Dette beholder eksisterende data og legger til nye data på slutten av filen.

Tekstfiler kontra binærfiler

Tekstfiler:

  • Lagrer data som tegn som kan leses av mennesker.
  • Bruker fprintf() og fscanf().

Binærfiler:

  • Lagrer data i råformat.
  • Bruker fwrite() og fread().

Oppsummering

I denne leksjonen lærte De:

  • Hvordan De skriver til og leser binærfiler ved hjelp av fwrite() og fread().
  • Forskjellen mellom filoperasjoner for tekstfiler og binærfiler.
  • Hvordan De legger binærdata til i en eksisterende fil.

Deretter skal vi se nærmere på feilhåndtering i filoperasjoner!

Arbeid med binærfiler — illustrasjon 10
Gratis å komme i gang

Lær deg C med en AI-veileder – gratis

Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.

Kurs
39
Leksjoner
144

Ofte stilte spørsmål

Er leksjonen «Arbeid med binærfiler» gratis?

Ja – hele teksten i «Arbeid med binærfiler» er gratis å lese her på nettet. For å øve interaktivt med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt, og for å låse opp resten av C Academy-kurset, kan du oppgradere til CoddyKit PRO. Kurset i C Academy inneholder totalt 3 leksjoner.

Hva lærer jeg i «Arbeid med binærfiler»?

Forstå hvordan ikke-tekstbaserte data håndteres med fread og fwrite. Du øver på C Academy med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.

Trenger jeg erfaring for å begynne med C Academy?

Ingen tidligere erfaring er nødvendig. C Academy på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 2 av 3.

Hvor lang tid tar leksjonen «Arbeid med binærfiler»?

De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.

Kan jeg skrive og kjøre kode i denne C Academy-leksjonen?

Ja. Alle C Academy-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.

Alle leksjonene i dette kurset

  1. Introduksjon til filhåndtering
  2. Arbeid med binærfiler
  3. Feilhåndtering for filer
← Tilbake til C Academy