C语言文件的读写操作

目录

一,文件

1.文本模式,二进制模式

2.标准文件

二,文件的打开和关闭

1.文件指针

1.1文件的打开

 1.2文件的关闭

三,文件的顺序读写 

1.fgetc

2.fputc

3.fgets

4.fputs

5.fprintf

6.fscanf

7.fwrite

8.fread

 9.表格

四,文件的随机读写

1,fseek 

 2,ftell

3,rewind

判断文件结束

1,feof

2,判断结束

文件使用模式(表格)

文本文件的部分代码示例

二进制文件的部分代码


一,文件

C把文件看作是一系列的连续的字节,每个字节都能被单独读取。

C提供两种文件模式:文本模式和二进制模式

1.文本模式,二进制模式

   首先要区分文本内容和二进制内容,文本文件格式和二进制文件格式,及文件的文本模式和二进制模式。

  1. 文本内容:如果文件最初使用的是二进制编码的字符(如ASCII码)表示文本,该文件就是                      文本文件,其中包含文本内容。
  2. 二进制内容:如果文件中的二进制值代表机器语言代码或数值数据,图片或者音乐编码,该                       文件就是二进制文件,其中包含二进制内容。

2.标准文件

  c程序自动打开的三个文件

  1. 标准输入(stdin):为程序提供输入,getchar()和scanf()使用的文件。
  2. 标准输出(stdout):为程序提供输出,putchar()、printf()和puts()使用的文件。
  3. 标准错误输出(stderr):提供一个逻辑上不同的地方来发送错误信息。

二,文件的打开和关闭

1.文件指针

每个被使用的文件都在内存中开辟了一个相对应的文件信息区,用来存放文件的相关信息。这些信息是保存在一个结构体变量中的,这个结构体类型是由系统声明的取名FILE(文件)。

定义一个文件指针变量:

FILE * pf ;//文件指针变量,指向被操作的文件

1.1文件的打开

  打开文件我们用到一个打开文件的函数 fopen()查找库函数得知 :

所以我们用文件指针接受打开的文件可操作流:

FILE * pf = fopen("文件名.后缀","打开方式");
//打开文件之后要判断有没有打开成功
if(pf==NULL) //打开失败返回NULL
 perror("fopen");
 //perror报错函数,会打印括号里面的错误信息

是一个高度抽象的概念:

         程序直接传输到外部设备比较繁琐,所以写入流,让流操作

 下述所有的流 同时包括 FILE文件指针pf。

 1.2文件的关闭

      关闭与流关联的文件并取消关联,使用fcloae():

fclose(pf);//关闭文件
pf=NULL; //置空指针

注意

  1. 打开文件是有限的,只打开不释放,最后会打不开文件。
  2. 路径错误也会导致打不开文件
  3. 可以用绝对路径打开文件,但是要注意转义字符(目录下的绝对位置,直接到达目标位置,通常是从盘符开始的路径)。

      

三,文件的顺序读写 

       先简单介绍所有的读写函数,然后再附上表格。

       所有用到的pf都表示文件指针。

1.fgetc

从流中获取字符

参数是标准输入流 

        读一次向后移动 1 ,类似于指针的 ++ ,当读取超出文件长度 出EOF(-1) ;

int ret =  fgetc(pf);

2,fputc

将字符写入流

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值