C语言判断文件为空问题
答案:2 悬赏:30 手机版
解决时间 2021-02-03 08:03
- 提问者网友:皆是孤独
- 2021-02-03 00:39
RT.if(feof(fp){ printf("文件内容为空,请先输入,按任意键返回"); system("pause");}这样为什么不能判断是否为空?
最佳答案
- 五星知识达人网友:荒野風
- 2021-02-03 01:25
foef()是判断文件当前读写指针是否在文件末尾,如果文件有内容,读写到文件末尾,返回值也是真,但是文件有内容,并不是空的 。你可以读取文件第一个字符,如果第一个字符是文件末尾,文件就是空。如char ch; ch=fgetc(fp);if(ch==EOF) printf("文件为空\n");
全部回答
- 1楼网友:老鼠爱大米
- 2021-02-03 02:00
文件为空时 只有文件结束符eof
当读取第一个字符是eof时即可判断文件是不是空
#include
#include
void main()
{
file *fp;
char ch;
if((fp=fopen("1.txt","r"))==null)
{
printf("error!\n");
exit(0);
}
ch=fgetc(fp);
if(ch==eof)
printf("文件为空\n");
else
printf("文件不为空\n");
}
ch就是获取到的文件里面的内容
fgetc(fp)这个函数就是获取文件内容的函数
从文件头开始 一直取到文件尾。。每调用这个函数一次 就会取出文件中的下一个字符 一直到文件尾为止
其中你的那个1.txt要放在和你程序相同的文件夹内
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯