Создание и запись в файлы на C

CBeginner
Практиковаться сейчас

Введение

В этом практическом занятии вы научитесь создавать новый файл на языке программирования C и записывать в него данные. Тип данных FILE используется для представления файла в C, а функция fopen() используется для открытия файла для чтения, записи или добавления. После открытия файла в него можно записывать данные с использованием функции fprintf(), а функция fclose() используется для закрытия файла после записи данных.

Создайте новую программу на C с использованием терминала

Откройте терминал и создайте новую C-программу под названием main.c в каталоге ~/project/ с использованием команды:

nano ~/project/main.c

Подключите необходимые заголовочные файлы

В файле main.c включите необходимые заголовочные файлы:

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

Объявите переменные и указатели

Определите переменные и указатель типа FILE, чтобы хранить файл и его содержимое:

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

Откройте файл для записи

Откройте файл для записи с использованием функции fopen(). Если файл не существует, он будет создан. В противном случае его содержимое будет перезаписано:

fptr = fopen("emp.txt", "w");
if (fptr == NULL)
{
    printf("File does not exist.\n");
    return 1;
}

Запишите данные в файл

попросите пользователя ввести имя, возраст и зарплату сотрудника и запишите их в файл с использованием функции fprintf():

printf("Enter the name:\n");
scanf("%s", name);
fprintf(fptr, "Name  = %s\n", name);

printf("Enter the age:\n");
scanf("%d", &age);
fprintf(fptr, "Age  = %d\n", age);

printf("Enter the salary:\n");
scanf("%f", &salary);
fprintf(fptr, "Salary  = %.2f\n", salary);

Закройте файл

Закройте файл с использованием функции fclose():

fclose(fptr);

Завершите код

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

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

    // open for writing
    fptr = fopen("emp.txt", "w");
    if (fptr == NULL) {
        printf("File does not exist.\n");
        return 1;
    }

    printf("Enter the name:\n");
    scanf("%s", name);
    fprintf(fptr, "Name  = %s\n", name);

    printf("Enter the age:\n");
    scanf("%d", &age);
    fprintf(fptr, "Age  = %d\n", age);

    printf("Enter the salary:\n");
    scanf("%f", &salary);
    fprintf(fptr, "Salary  = %.2f\n", salary);

    fclose(fptr);
    return 0;
}

Резюме

В этом практическом занятии вы узнали, как создавать новый файл на языке программирования C и записывать в него данные с использованием функций FILE, fopen(), fprintf() и fclose(). Не забывайте всегда закрывать файл после записи в него данных, чтобы избежать потери данных.