lima-city: Webhosting, Domains und Cloud
1 Pluspunkt 0 Minuspunkte

Dieses Beispiel in C liest eine Textdatei.

#include <stdio.h>

int main() {

    FILE *file = fopen("datei.txt", "r");

    char buffer[100]; // Puffer für gelesene Daten

    // Verwende fread, um eine bestimmte Anzahl von Bytes zu lesen
    size_t bytesRead = fread(buffer, sizeof(char), sizeof(buffer), file);

    if (bytesRead > 0) {
        printf("Gelesene Daten: %s\n", buffer);
    } else {
        printf("Konnte nicht aus der Datei lesen.\n");
    }

    fclose(file);
    return 0;

}

Mein Problem: Wenn ich nicht weiß wie groß die Datei ist, wie lese ich dann alles ein?

bezieht sich auf eine Antwort auf: Datei lesen und schreiben in C
von  

1 Antwort

0 Pluspunkte 0 Minuspunkte

Mit fseek() und ftell() kannst du die Dateigröße auslesen.

#include <stdio.h>
#include <stdlib.h>

int main(void) {
    FILE *f = fopen("datei.txt", "rb");
    if (!f) return 1;

    fseek(f, 0, SEEK_END);
    long size = ftell(f);
    rewind(f);

    char *s = malloc(size + 1);
    if (!s) { fclose(f); return 1; }

    fread(s, 1, size, f);
    s[size] = '\0';

    printf("%s\n", s);

    free(s);
    fclose(f);
    return 0;
}
von (686 Punkte)  
Diese Community basiert auf dem Prinzip der Selbstregulierung. Beiträge werden von Nutzern erstellt, bewertet und verbessert – ganz ohne zentrale Moderation.

Wer hilfreiche Fragen stellt oder gute Antworten gibt, sammelt Punkte. Mit steigender Punktzahl erhalten Mitglieder automatisch mehr Rechte, zum Beispiel

  • Kommentare verfassen
  • Fragen und Antworten bewerten
  • Themen von Fragen bearbeiten
  • Fragen, Antworten und Kommentare bearbeiten
  • Inhalte ausblenden

So entsteht eine Plattform, auf der sich Qualität durchsetzt – getragen von einer engagierten Gemeinschaft.

2,556 Fragen

3,074 Antworten

281 Kommentare

14 Nutzer