精华内容
下载资源
问答
  • C语言怎么判断文件是否为空

    万次阅读 2012-04-09 17:59:58
    文件为空时 只有文件结束符EOF 当读取第一个字符是EOF时即可判断文件是不是空 #include #include void main() { FILE *fp; char ch; if((fp=fopen

    http://zhidao.baidu.com/question/58621913.html?fr=qrl&cid=866&index=1&fr2=query


    文件为空时 只有文件结束符EOF
    当读取第一个字符是EOF时即可判断文件是不是空
    #include <stdio.h>
    #include <stdlib.h>
    
    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要放在和你程序相同的文件夹内

    法二:

    FILE *fp=fopen("1.txt","r");
    feof(fp)返回0非空,返回1为空 

    展开全文
  • 文件为空,写入标题:方法名 平均时间 最大值 最小值 循环次数 读写大小 fprintf(fp, " %-30s %-20s %-20s %-20s %-10s %-10s\n " , " caseName " , " averageTime(ms) " , " maxTime(ms) " , " minTime(ms) " , " ...
    void writeReslut2(char* caseName,double averageTime,double max, double min,int loops,int size){
        fpos_t pos = 0;
        fpos_t endpos = 0;
        FILE *fp = fopen("E:\\PerformanceResult.txt","at");
        if(NULL == fp){
            printf("open file failed !\n");
            return ;
        }
        //printf("%d\n",ftell(fp));
    
        fgetpos(fp,&pos);
        //printf("pos = %d\n",pos);
        fseek(fp,0L,SEEK_END);
        fgetpos(fp,&endpos);
        //printf("endpos=%d\n",endpos);
    
        if(pos == endpos){//文件为空,写入标题:方法名 平均时间 最大值 最小值 循环次数 读写大小
            fprintf(fp,"%-30s %-20s %-20s %-20s %-10s %-10s\n","caseName","averageTime(ms)","maxTime(ms)","minTime(ms)","loops","size(KB)");
        }
        fseek(fp,0L,SEEK_END);
        fprintf(fp,"%-30s %-20f %-20f %-20f %-10d %-10d\n",caseName,averageTime,max,min,loops,size);
        fclose(fp);
    
    }

    通过文件打开的指正位置,以及结尾的指正位置判断

    转载于:https://www.cnblogs.com/luolizhi/p/5802023.html

    展开全文
  • while(!feof(fp)) { s=(Tx *)malloc(sizeof (Tx)); fscanf(fp,"%d %s %d\n",&s->id,&s->name,&s->tel); printf("%d%s%d\n",s->id,s... 如果文件中没有数据就会报错,怎么处理 feof()不是可以判断的吗
  • linux c开发一定会遇到创建文件,废话少说,代码如下,不足之处请多指教! #include <sys/types.h> #include <sys/stat.h> #include <fcntl.h> #include <unistd.h> #include <stdbool...

    linux c开发一定会遇到创建文件,废话少说,代码如下,不足之处请多指教!

    #include <sys/types.h>
    #include <sys/stat.h>
    #include <fcntl.h>
    #include <unistd.h>
    #include <stdbool.h>
    #include <stdio.h>
    #include <errno.h>
    #include <string.h>
    #include <libgen.h>
    #include <stdlib.h>
    
    int isFileExisted(const char *pathname){
    	if(access(pathname,F_OK) == 0){
    		return true;
    	}
    	return false;
    }
    
    void makeDirectory(const char *path){
    	if((strcmp(path,".") == 0) || (strcmp(path,"/")==0))
    		return ;
    	if(isFileExisted(path))
    		return ;
    	else{
    		char *duppath = strdup(path);
    		const char *dir_name = dirname(duppath);
    		makeDirectory(dir_name);
    		free(duppath);
    	}
    	if(mkdir(path,0766) < 0){
    		perror("mkdir");
    		exit(1);
    	}
    	return;
    }  
    
    int createFile(const char*filename,int mode){
    	if(creat(filename,mode) < 0){
    		if(errno == ENOENT){
    			char *dup_filename=strdup(filename);
    			char *dir = dirname(dup_filename);
    			makeDirectory(dir);
    			free(dup_filename);
    			creat(filename,mode);
    		}
    		return false;
    	}
    	return true;
    }
    
    
    int isFileNull(const char *filename){
    	FILE *fp = fopen(filename,"r");
    	if(fp == NULL)
    		return -1;	
    	int val = 0;
    	char ch = fgetc(fp);
    	if(ch == EOF)
    		val = 1;
    	fclose(fp);
    	return val;
    }
    

    补充:

    dirname函数和basename函数,使用man 3 dirname 查看。

    展开全文
  • C语言读取文件判断是否读取结束

    千次阅读 2019-09-07 15:44:16
    读取文件时,判断内容是否已经为空当目前所读取的字符为EOF时说明后面内容为空或者直接使用feof()函数 当目前所读取的字符为EOF时... printf("文件为空\n"); 或者直接使用feof()函数 FILE* fp=fopen(********); if...

    当目前所读取的字符为EOF时说明后面内容为空

    char ch;
    FILE* fp=fopen(********);
    ch=fgetc(fp);
    if(ch==EOF)
    	printf("文件为空\n");
    

    或者直接使用feof()函数

    FILE* fp=fopen(********);
    if(feof(fp)printf("文件为空\n");
    
    展开全文
  • C语言文件写操作

    2017-03-03 08:46:24
    1.需要文件指针,指向被打开的文件,这里用到fopen函数(要养成一个良好的习惯,在文件打开后要检查文件指针是否为空,以此来判断指针是否指向目标文件) 2.可以用fputs函数来进行文件的写操作。 // FileRead...
  • c语言文件chess.c

    2020-04-14 11:18:58
    编写程序读入某一时刻下棋的状态,并判断是否有人即将获胜,即:同一颜色的棋子在同一条横行、纵列或斜线上连成4个棋子,且该4个棋子的两端至少有一端为空位置。 输入的棋盘大小是19×19,用数字0表示空位置(即没有...
  • C语言学习之文件操作

    2019-10-17 18:38:45
    (一)文件操作基本步骤: ...关闭文件( fclose):需要判断文件指针是否为空 (二)函数说明 FILE *fopen(const char *pathname, const char *mode); FILE :返回文件指针,若打开失败,返回NULL...
  • Linux C 库函数判断一个文件是否为空

    千次阅读 2016-07-21 18:48:30
    C语言fgetc()函数的返回值意义 函数原型:int fgetc( FILE* stream ); 这个函数的返回值,是返回读取的一个字节。如果读到文件末尾返回EOF。 EOF其实就是一个宏:#define EOF (-1) 表示-1. 既然返回的是一个...
  • 有一些,经典的对文件的操作。 fin = fopen ( argv[1], "rt" );//获取文件的指针 if ( fin == NULL )//判断是否为空 { fprintf ( stderr, "Cannot open/find %s\n", argv[2] ); exit ( EXIT_FA...
  • 基于文件C语言学生信息管理系统

    千次阅读 多人点赞 2019-04-03 20:45:36
    ●题目名称 C语言学生信息管理系统 ●题目分析 将文件引入学生信息管理系统,完善学生信息数据的处理,包括信息的读取、保存、刷新。...以只读方式打开指定文件,判断文件是否为空,若为空,则提示...
  • //标志,判断链表是否为空 //!!!定义单链表结构体!!! typedef struct Node{ int NUM;//类型总数 char NAME[100];//各类型名称 int num; //各类型下的货物总数 struct Node*next; }Node; //函数声明 ...
  • 如何判断文档或文件夹为空

    千次阅读 2017-03-25 12:50:38
    c语言如何判断为空可用读文件操作函数的返回值来判定,如: 函数: int fgetc(FILE *stream); //从参数stream 所指的文件中读取一个字符. 若读到文件尾而无数据时便返回EOF. 当以读方式打开文件后,第一次使用...
  • // 判断线性表是否为空 int ListLength(); // 求线性表的长度 void Travel(); // 遍历线性表 int ListInsert(); // 向线性表插入元素 int ListDelete(); // 从线性表删除元素 int GetElem(); // 找到线性表...
  • C语言:将数据保存到文本文件

    万次阅读 多人点赞 2017-07-14 10:34:29
    任务代码: #include #include int main() { FILE *fp;//文件指针 int i, d; /*文件的打开*/ fp=fopen("data.txt","w");//fopen打开文件,这个文件可以是当前不存在的。... if(fp==NULL) //判断如果文件指针为空
  • //标志,判断链表是否为空 //!!!定义单链表结构体!!! <货物类型> typedef struct Node{ char NAME[100];//各类型名称 int NUM; //各类型下的货物总数 struct Node*next; }Node; // 定义单个货物 ...
  • C语言编程要点

    2017-09-18 00:10:37
    4.11. 怎样判断一个文件的属性? 67 4.12. 怎样查看PATH环境变量? 69 4.13. 怎样打开一个同时能被其它程序修改的文件? 69 4.14. 怎样确保只有你的程序能存取一个文件? 71 4.15. 怎样防止其它程序修改你正在修改的那...
  • 各位小伙伴,今天给大家带来的是软件测试中的shell自动化接口测试,我们将写一个shell脚本,该脚本可以自动运行程序,并给程序中... 接下来我们写shell脚本,如下图我们的脚本很简单,就是判断了一下目标文件是否存...
  • //如果链表为空,新建立的结点就是链表的头结点 else tail->next=g; tail=g;//tail永远指向链表的尾结点 } } tail->next=NULL; return fp; } //在程序执行之初将上一次存储在文件中的全部数据读入新建...
  • 判断是否读取到文件结尾问题

    千次阅读 2019-03-07 21:31:17
    如果是,函数则返回的是非0值(真),否则为0(假),要注意的是,feof()是先读文件在判断是不是到达文件结束,所以当使用feof()作为循环判断条件的话,就需要注意一种情况,就是当文件为空的时候,它也会读取一次文件...
  •  这段程序的意义是,如果返回的指针为空,表示不能打开C盘根目录下的hzk16文件,则给出提示信息“error on open c:\ hzk16file!”,下一行getch()的功能是从键盘输入一个字符,但不在屏幕上显示。在这里,该行的...
  • 6.22 如何在一个文件判断声明extern的数组的大小(例如,数组定义和大小在另一个文件中)?sizeof操作符似乎不行。 6.23 sizeof返回的大小是以字节计算的,怎样才能判断数组中有多少个元素呢? 第7章 内存分配 ...
  • 如果是,函数则返回的是非0值(真),否则为0(假),要注意的是,feof()是先读文件在判断是不是到达文件结束,所以当使用feof()作为循环判断条件的话,就需要注意一种情况,就是当文件为空的时候,它也会读取一次文件...
  • 1.除姓名外,其他信息均可。 2.姓名中可以有空格,但不能全为空格。 3.必须保证输入的出生年月合乎要求,包括闰年,月份,日的判断 4.可能有重名现象,让客户选择编辑或删除哪一个 可能出现的问题: 1.输入...
  • o 6.11 什么有那么多关于指针的疑惑?什么这些问题如此经常地出现? o 6.12 我很困惑。我就是不能理解这些指针一类的东西。 o 6.13 考虑到有关指针的所有这些困惑, 难道把要求它们内部表达都必须 0 ...
  • 编译原理 C语言实现词法分析

    热门讨论 2011-05-14 00:48:46
    如源程序为C语言。输入如下一段: main() { int a,b; a = 10; b = a + 20; } 要求输出如右图。 (2,“main”) (5,“(” ) (5,“ )” ) (5,“{ ” ) (1,“int” ) (2,“a” ) (5,“,” ) ...

空空如也

空空如也

1 2 3 4 5
收藏数 94
精华内容 37
关键字:

c语言判断文件为空

c语言 订阅