溫馨提示×

c語言如何從文件中讀取數(shù)據(jù)

小億
183
2023-09-20 18:44:46
欄目: 編程語言

在C語言中,我們可以使用以下步驟從文件中讀取數(shù)據(jù):

  1. 打開文件:使用fopen()函數(shù)打開文件,它接受兩個(gè)參數(shù),一個(gè)是文件名,另一個(gè)是打開方式(如"r"表示只讀模式)。
FILE *file = fopen("filename.txt", "r");
  1. 檢查文件是否成功打開:使用fopen()函數(shù)后,需要檢查返回的文件指針是否為NULL,來確保文件是否成功打開。
if (file == NULL) {
printf("無法打開文件\n");
return 1;
}
  1. 讀取數(shù)據(jù):使用fscanf()fgets()函數(shù)從文件中讀取數(shù)據(jù)。fscanf()函數(shù)可以根據(jù)指定的格式從文件中讀取數(shù)據(jù),而fgets()函數(shù)則一次讀取一行數(shù)據(jù)。
int data;
// 使用fscanf()函數(shù)讀取整數(shù)
fscanf(file, "%d", &data);
char line[100];
// 使用fgets()函數(shù)讀取一行數(shù)據(jù)
fgets(line, sizeof(line), file);
  1. 關(guān)閉文件:使用fclose()函數(shù)關(guān)閉文件。
fclose(file);

下面是一個(gè)完整的示例代碼,從文件中讀取整數(shù)和字符串:

#include <stdio.h>
int main() {
FILE *file = fopen("data.txt", "r");
if (file == NULL) {
printf("無法打開文件\n");
return 1;
}
int number;
fscanf(file, "%d", &number);
printf("讀取的整數(shù)為:%d\n", number);
char line[100];
fgets(line, sizeof(line), file);
printf("讀取的字符串為:%s\n", line);
fclose(file);
return 0;
}

請確保在運(yùn)行時(shí),data.txt文件存在并包含合適的數(shù)據(jù)。

0