C语言打开文件内有数据
#include<stdio.h>#include<stdlib.h>
int main(void)
{
FILE* fp = NULL;
fp = fopen("file.txt", "ab+");
if(feof(fp))
{
printf("文件为空");
}
else if(!feof(fp))
{
printf("文件内有东西");
}
fclose(fp);
return 0;
}
我的放在桌面然后桌面上没有这个文件,他直接创建了一个之后打卡里面就有数据。 所以你想说什么...问题 a 以附加的方式打开只写文件。若文件不存在,则会建立该文件,如果文件存在,写入的数据会被加到文件尾,即文件原先的内容会被保留。
所以你认为ab+会不会创建文件?
所以编程要勤动手 本帖最后由 jackz007 于 2021-9-14 12:40 编辑
#include <stdio.h>
int main(void)
{
FILE * fp ;
size_t k ;
if((fp = fopen("file.txt" , "r"))) {
fseek(fp , 0 , 2) ; // 把文件指针移动到文件尾部
k = ftell(fp) ; // 得到文件尺寸
if(! k) printf("文件为空\n") ; // 如果文件尺寸为 0
else printf("文件不空\n") ; // 否则
fclose(fp) ;
} else {
fprintf(stderr , "文件不存在\n") ;
}
} 没有数据当前指针是不是就是文件尾? routty 发表于 2021-9-14 12:36
没有数据当前指针是不是就是文件尾?
routty 你是真不知道还是假不知道? 好久没用,有点忘了 routty 发表于 2021-9-14 15:02
好久没用,有点忘了
谦虚了
页:
[1]