📅  最后修改于: 2023-12-03 14:40:26.734000             🧑  作者: Mango
在C语言中,要打开和读取文件内容,需要通过使用标准库中的文件操作函数来实现。
要打开文件,我们需要使用C语言中提供的fopen函数。该函数返回一个指向文件的指针,若文件不存在则返回空指针。
FILE *fptr; // 文件指针
char filename[] = "example.txt"; // 文件名
fptr = fopen(filename, "r"); // 打开文件
if (fptr == NULL) {
printf("文件%s不存在!", filename);
return 1;
}
上述代码中,我们声明了一个指向文件的指针变量fptr,并给定了待打开的文件名example.txt,以只读方式打开文件。
在文件打开成功后,我们可以使用fgetc、fgets或fscanf等函数读取文件内容。其中,fgetc函数用于逐个读取字符,fgets函数则用于逐行读取字符串。fscanf函数则可用于读取文件中的任何类型的数据。
char c = fgetc(fptr); // 读取一个字符
char str[100];
fgets(str, 100, fptr); // 读取一行字符串
int data1, data2;
fscanf(fptr, "%d %d", &data1, &data2); // 读取文件中的整数数据
在读取时,需要注意的是,每次读取完毕后需要及时关闭文件,防止出现文件被占用的情况。
fclose(fptr); // 关闭文件
#include <stdio.h>
int main() {
FILE *fptr; // 文件指针
char filename[] = "example.txt"; // 文件名
fptr = fopen(filename, "r"); // 打开文件
if (fptr == NULL) {
printf("文件%s不存在!", filename);
return 1;
}
// 读取文件内容
char c = fgetc(fptr); // 读取一个字符
char str[100];
fgets(str, 100, fptr); // 读取一行字符串
int data1, data2;
fscanf(fptr, "%d %d", &data1, &data2); // 读取文件中的整数数据
printf("文件中的内容为:\n%c\n%s\n%d %d\n", c, str, data1, data2);
fclose(fptr); // 关闭文件
return 0;
}
上述代码实现了通过C程序读取一个文件example.txt的内容,包括一个字符、一行字符串和两个整数。在读取后,我们打印了文件中的内容。