【无标题】c语言—文件操作

本文介绍了文件在编程中的重要性,详细讲解了文件的定义、打开和关闭、顺序读写(包括字符输入/输出函数如fgetc/fputc、文本行操作函数如fgets/fputs、格式化输入输出函数如scanf/fprintf)以及随机读写(如fseek/ftell/rewind)的区别。特别区分了文本文件与二进制文件的存储方式。
摘要由CSDN通过智能技术生成

1.为什么使用文件

2.什么是文件

3.文件的打开和关闭

4.文件的顺序读写

5.文件的随机读写

6.文本文件和二进制文件

1.为什么使用文件

我们使用word时,写了一大段文字,此时文档存在内存,当我们退出word的时候,我们所写的文字自然就不存在了,等下次打开word,文字又得重新写入,如果使用这样的word就很难受。

我们使用过word的人士会出来说,那在我们写完文字,打开保存,文字被自动保存到文件,文件是将数据存放到电脑的硬盘上,这样一来做到了数据的持久化。

2.什么是文件

在程序设计中,从程序功能的角度出发分为两种,如下

目前为止,我所学的c语言,输入输出都是以终端为对象的,即从终端的键盘输入数据,运行结果显示到显示器上。

这里我拿scanf和printf来说

printf

printf打印一串字符到显示屏上,是直接打印到显示屏上的?显然不是,为啥不是嘞,因为他是调用库函数里的printf,库里面事先写好了printf函数的功能,它拿来使用就行。

scanf函数也是同理。

3.文件的打开和关闭

文件的打开,指针,关闭如下

这块我单独将一下文件的关闭和文件的打开

文件在读写之前应该先打开文件,在使用结束之后应该关闭文件。

ASCII规定使用fopen函数来打开文件,fclose来关闭文件。

看fclose函数的作用,不难得知,fclose是关闭文件当中的流,我们之前好像没见过流,不知道流是啥东西呀,那么我们引入了新的概念流,那流是什么呢?听我道来,好吧。

程序员把数据写到流里面,流再将数据传给u盘,光盘,硬盘......,流就是汇集了一个又一个数据,然后流出到u盘,硬盘等等。

4.文件的顺序读写

1.fgetc函数

fgetc在流里拿到字符

作用:字符输入函数

适用于所有输入流

下面的例子是fgetc将字符输入到显示器上

fputc函数

作用:字符输出

适用于:所有流

fputc可以将字符写进文件

fputc直接打印在屏幕上

fputs

文本行输入函数

他是一行一行输入文本,而要换行,加个斜杠n就行

fgets

作用:文本行输出

适用于:所有输入流

下面是例子

fscanf

作用:格式化输入函数

使用于:所有输入函数

作用:格式化输入,从流中读取数据

fprintf

作用:格式化输出函数

适用于:所有输出流

fwrite

作用:二进制输出

适用:文件

以下是二进制写文件

注意:二进制写的文件在电脑上是不可见的

fread

作用:二进制输入

使用:文件

以下是二进制读文件

二进制文件也不可读

sprintf

作用:调用信息数据,写出字符串

sscanf

作用:调用信息数据,读出字符串

5.随机读写

fseek

起到定位文件指针的作用

fseek

作用:根据文件指针的位置以及偏移量来定位文件指针

先把字母a到h写进记事本

ftell

作用:统计指针的偏移量

rewind

作用:让文件指针回到文件的起始位置

6.文本文件和二进制文件

二进制文件:数据在内存中以二进制的形式存储,不加转换的输出到外存

文本文件:是外存上做改动,如果要在外存上以ASCII码的形式存储,则需要在存储前转换,以ASCII码字符的形式存储的文件就是文本文件。

  • 8
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值