我用fopen("file.txt","a+") ,fgets等函数打开一个空文件时,用fgets()

ang_e 2003-04-15 04:31:21
我用fopen("file.txt","a+") ,fgets等函数打开一个空文件时,用fgets()总是得到乱码,如何返回空值或“”呢?
...全文
162 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
whunvy 2003-05-16
  • 打赏
  • 举报
回复
用流;

你返回的乱码是随机生成的,所以只盼对文件是否存在,即可,不用非得打开。
SharpKing515 2003-04-15
  • 打赏
  • 举报
回复
可以先判断一下这个文件是否是空文件.如果是:自已return 空 否则用fgets()读!
if(filesize(fp) ==0)
return ;
else
fgets(...) ;

//------------------------
long filesize(FILE *stream)
{
long curpos, length;

curpos = ftell(stream);
fseek(stream, 0L, SEEK_END);
length = ftell(stream);
fseek(stream, curpos, SEEK_SET);
return length;

}
qiuafa 2003-04-15
  • 打赏
  • 举报
回复
FILE *fp = fopen("file.txt","a+");
if (fp==NULL)
return;
if(!feof(fp))
fgets(); //

13,825

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧