📌  相关文章
📜  C程序打印文件内容(1)

📅  最后修改于: 2023-12-03 14:40:26.734000             🧑  作者: Mango

C程序打印文件内容

在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的内容,包括一个字符、一行字符串和两个整数。在读取后,我们打印了文件中的内容。