C-Dateien erstellen und schreiben

CCBeginner
Jetzt üben

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einführung

In diesem Lab lernst du, wie du in der C-Programmiersprache eine neue Datei erstellen und Daten in diese schreiben kannst. Der FILE-Datentyp wird in C verwendet, um eine Datei zu repräsentieren, und die fopen()-Funktion wird verwendet, um eine Datei zum Lesen, Schreiben oder Anhängen zu öffnen. Nachdem eine Datei geöffnet wurde, können Daten in sie mit der fprintf()-Funktion geschrieben werden, und die fclose()-Funktion wird verwendet, um die Datei nach dem Schreiben zu schließen.

Erstellen eines neuen C-Programms über die Kommandozeile

Öffne die Kommandozeile und erstelle ein neues C-Programm namens main.c im Verzeichnis ~/project/ mit dem Befehl:

nano ~/project/main.c

Fügen Sie erforderliche Headerdateien hinzu

In der Datei main.c fügen Sie die erforderlichen Headerdateien hinzu:

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

Definieren von Variablen und Zeigern

Definieren Sie Variablen und einen Zeiger vom Typ FILE, um die Datei und ihren Inhalt zu speichern:

FILE *fptr;
char name[20];
int age;
float salary;

Öffnen einer Datei zum Schreiben

Öffnen Sie eine Datei zum Schreiben mit der fopen()-Funktion. Wenn die Datei nicht existiert, wird sie erstellt. Andernfalls werden ihre Inhalte überschrieben:

fptr = fopen("emp.txt", "w");
if (fptr == NULL)
{
    printf("Datei existiert nicht.\n");
    return 1;
}

Schreiben von Daten in die Datei

Bitten Sie den Benutzer, den Namen, das Alter und das Gehalt des Mitarbeiters einzugeben, und schreiben Sie diese in die Datei mit der fprintf()-Funktion:

printf("Geben Sie den Namen ein:\n");
scanf("%s", name);
fprintf(fptr, "Name  = %s\n", name);

printf("Geben Sie das Alter ein:\n");
scanf("%d", &age);
fprintf(fptr, "Alter  = %d\n", age);

printf("Geben Sie das Gehalt ein:\n");
scanf("%f", &salary);
fprintf(fptr, "Gehalt  = %.2f\n", salary);

Schließen der Datei

Schließen Sie die Datei mit der fclose()-Funktion:

fclose(fptr);

Vollständigen Sie den Code

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

int main() {
    FILE *fptr;
    char name[20];
    int age;
    float salary;

    // Öffnen zum Schreiben
    fptr = fopen("emp.txt", "w");
    if (fptr == NULL) {
        printf("Datei existiert nicht.\n");
        return 1;
    }

    printf("Geben Sie den Namen ein:\n");
    scanf("%s", name);
    fprintf(fptr, "Name  = %s\n", name);

    printf("Geben Sie das Alter ein:\n");
    scanf("%d", &age);
    fprintf(fptr, "Alter  = %d\n", age);

    printf("Geben Sie das Gehalt ein:\n");
    scanf("%f", &salary);
    fprintf(fptr, "Gehalt  = %.2f\n", salary);

    fclose(fptr);
    return 0;
}

Zusammenfassung

In diesem Lab haben Sie gelernt, wie Sie in der C-Programmiersprache eine neue Datei erstellen und Daten mit den Funktionen FILE, fopen(), fprintf() und fclose() in diese schreiben. Denken Sie daran, die Datei immer nach dem Schreiben zu schließen, um Datenverluste zu vermeiden.