c语言怎么读取文件全部内容

avatar
作者
筋斗云
阅读量:2

在C语言中,可以使用fopen函数打开文件,然后使用fread函数读取文件的全部内容。

下面是一个读取文件全部内容的示例代码:

#include <stdio.h>  int main() {     FILE *file;     long fileSize;     char *buffer;      // 打开文件     file = fopen("file.txt", "rb");     if (file == NULL) {         printf("无法打开文件");         return 1;     }      // 获取文件大小     fseek(file, 0, SEEK_END);     fileSize = ftell(file);     rewind(file);      // 分配内存空间     buffer = (char*) malloc(fileSize * sizeof(char));     if (buffer == NULL) {         printf("内存分配失败");         return 1;     }      // 读取文件内容     fread(buffer, sizeof(char), fileSize, file);      // 输出文件内容     printf("%s", buffer);      // 关闭文件和释放内存     fclose(file);     free(buffer);      return 0; } 

在示例代码中,首先使用fopen函数打开文件,参数"rb"表示以二进制格式打开文件,读取文件内容。如果文件打开失败,则输出错误信息并返回。

接下来,使用fseek函数和ftell函数获取文件的大小,然后使用rewind函数将文件指针重置回文件开头。

然后,使用malloc函数动态分配内存空间,大小为文件大小。如果内存分配失败,则输出错误信息并返回。

接着,使用fread函数读取文件的全部内容到分配的内存空间。

最后,使用printf函数输出文件内容,关闭文件和释放内存。

注意:读取的文件内容将以字符数组的形式存储在内存中,所以如果文件内容是二进制数据,可能无法正确输出。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!