کار با فایل‌ها در C

خواندن و نوشتن فایل با fopen، fprintf، fscanf و fclose

کار با فایل در C

تا حالا داده‌های برنامه با بستن آن از بین می‌رفتند. با فایل می‌توان داده‌ها را برای همیشه ذخیره کرد. کتابخانه stdio.h ابزارهای کار با فایل را دارد.

باز کردن فایل — fopen

FILE *fptr = fopen("data.txt", "w");

پارامتر دوم حالت (mode) باز کردن است:

حالتتوضیح
"r"خواندن — فایل باید وجود داشته باشد
"w"نوشتن — فایل جدید می‌سازد، محتوای قبلی پاک می‌شود!
"a"افزودن — به انتهای فایل اضافه می‌کند
"r+"خواندن و نوشتن

بررسی موفقیت باز کردن

اگر فایل باز نشود، fopen مقدار NULL برمی‌گرداند:

FILE *fptr = fopen("data.txt", "r");

if (fptr == NULL) {
    printf("فایل باز نشد!");
    return 1;
}

نوشتن در فایل — fprintf

FILE *fptr = fopen("data.txt", "w");
fprintf(fptr, "Hello File!\n");
fprintf(fptr, "Number: %d", 42);
fclose(fptr);  // ⚠️ حتماً ببندید!

خواندن از فایل

روش ۱: fscanf — خواندن کلمه به کلمه

FILE *fptr = fopen("data.txt", "r");
char word[50];

while (fscanf(fptr, "%s", word) != EOF) {
    printf("%s\n", word);
}
fclose(fptr);

روش ۲: fgets — خواندن خط به خط

char line[100];
while (fgets(line, sizeof(line), fptr) != NULL) {
    printf("%s", line);
}

بستن فایل — fclose

هر فایلی که باز می‌کنید حتماً ببندید. بستن فایل:

نکات مهم

این مبحث بخشی از دوره آموزش کامل زبان C است.

ابزارهای مرتبط