C语言的文件处理

      所谓“文件”一般指存储在外部介质上数据的集合。根据数据的组织形式,可分为ASCII文件和二进制文件。ASCII文件,又称为文本文件,它的每一个字节存放一个ASCII代码,代表一个字符。二进制文件是把内存中的数据按其在内存中的存储形式原样输出到磁盘上存取。

一、文件的打开与关闭

ANSI C规定了标准输入输出函数库,用fopen()函数来实现打开文件。fopen函数的调用方式通常为:

FILE * fp;

fp = fopen(文件名,使用文件方式);

文件使用方式含义
“r”(只读)为输入打开一个文本文件
“w”(只写)为输出打开一个文本文件
“a”(追加)向文本文件尾增加数据
“rb”(只读)为输入打开一个二进制文件
“wb”(只写)为输出打开一个二进制文件
“ab”(追加)向二进制文件尾增加数据
“r+”(读写)为读/写打开一个文本文件
“w+”(读写)为读/写建立一个新的文本文件
“a+”(读写)为读/写打开一个文本文件
“rb+”(读写)为读/写打开一个二进制文件
“wb+”(读写)为读/写建立一个新的二进制文件
“ab+”(读写)为读/写打开一个二进制文件

 

 

 

 

 

 

 

 

 

用fclose函数关闭文件。fclose函数调用的一般形式为:

fclose(文件指针);

二、文件的读写操作

fputc函数把一个字符写到磁盘文件上去。其调用形式为:fputc(ch,fp);

fgetc函数从指定的文件读入一个字符,该文件必须是以读或读写方式打开的,其调用形式为:ch=fgetc(fp);

 

fread和fwrite用来读写一个数据块,其一般调用形式为:

fread(buffer,size,count,fp);

fwrite(buffer,size,count,fp);

其中:

buffer:是一个指针。对fread来说,它是读入数据的存放地址;对fwrite来说,它是要输出数据的地址。

size:要读写的字节数。

count:要进行读写多少个size字节的数据项。

fp:文件型指针。

 

格式化读写:

fprintf(文件指针,格式字符串,输出表列);

fscanf(文件指针,格式字符串,输出表列);

 

fgets的作用是从指定文件读入一个字符串。

fgets(str,n,fp);

fputs函数的作用向指定的文件输出一个字符串。

fputs(str,fp);

三、文件的定位

rewind函数的作用是使位置指针重新返回文件的开头。

rewind(fp);

fseek函数可以实现改变文件的位置指针。

fseek(文件指针,位移量,起始点);

起始点名 字用数字代表
文件开始SEEK_SET0
文件当前位置SEEK_CUR1
文件末尾SEEK_END2

 

 

 

“位移量”是指以起始点为基点,向前移动的字节数。ANSI C要求位移量是long型数据。

ftell函数的作用是得到流式文件中的当前位置,用相对于文件开头的位移量来表示。

ftell(fp);

四、文件的状态

feof(fp);    //若到文件末尾,函数值为“真”(非0)。

ferror(fp);   //若对文件操作出错,函数值为“真”(非0)。

clearerr(fp);  //使ferror和feof函数值置零。

转载于:https://www.cnblogs.com/chengtulang/p/3185887.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值