C语言读取文件判断为空如何解决
时间: 2024-11-13 14:22:19 浏览: 20
在C语言中,判断文件是否为空通常涉及到两个步骤:打开文件并检查其大小。如果文件大小为0,则可以认为文件是空的。以下是一个简单的示例:
```c
#include <stdio.h>
int is_file_empty(const char* filename) {
FILE* file = fopen(filename, "r"); // 打开文件以读取模式
if (file == NULL) { // 检查文件是否成功打开
perror("Error opening file");
return 1; // 文件无法打开,视为空文件
}
fseek(file, 0, SEEK_END); // 移动到文件结尾
long size = ftell(file); // 获取当前位置作为文件大小
rewind(file); // 将文件指针还原到开头
if (size == 0) {
fclose(file);
return 0; // 文件大小为0,所以文件是空的
} else {
fclose(file);
return 1; // 文件不是空的
}
}
// 使用方法
int main() {
int result = is_file_empty("example.txt");
if (result == 0) {
printf("The file is empty.\n");
} else {
printf("The file is not empty.\n");
}
return 0;
}
阅读全文