阅读量:1
在C语言中,可以使用以下方法判断文件是否为空:
- 使用fseek函数将文件指针移动到文件的末尾,然后使用ftell函数获取当前文件指针的位置。如果位置为0,表示文件为空。
#include <stdio.h> int main() { FILE *file = fopen("file.txt", "r"); // 打开文件 fseek(file, 0, SEEK_END); // 移动文件指针到文件末尾 if (ftell(file) == 0) { // 获取文件指针位置 printf("文件为空\n"); } else { printf("文件不为空\n"); } fclose(file); // 关闭文件 return 0; }
- 使用fgetc函数逐个读取文件中的字符,如果读取到文件末尾,表示文件为空。
#include <stdio.h> int main() { FILE *file = fopen("file.txt", "r"); // 打开文件 int c = fgetc(file); // 读取文件中的一个字符 if (c == EOF) { // 判断是否到达文件末尾 printf("文件为空\n"); } else { printf("文件不为空\n"); } fclose(file); // 关闭文件 return 0; }
注意:以上两种方法都需要在操作文件前先打开文件,操作文件后再关闭文件。