C讲课笔记文件

网友投稿 678 2022-05-28

文章目录

一、文件打开与关闭

(一)概述

(二)文件打开函数 - fopen()

1、调用格式

2、参数与返回值说明

3、文件使用方式

(二)文件关闭函数 - fclose()

1、调用格式

2、参数说明

二、文件读写函数

三、案例演示

1、编写程序 - 演示文件读写.c

2、运行程序,查看结果

四、课后作业

任务:将C盘Windows目录下的win.ini文件复制到D盘根目录,同时在控制台输出该文件内容。

本次我们准备学习C语言中的文件操作。内存里的数据要持久保存,那么就必然会涉及到文件的读写操作。这也是C语言学习中比较重要的一部分内容,希望大家理解并掌握。

一、文件打开与关闭

(一)概述

文件在进行读写操作之前要先打开,使用完毕要关闭。所谓打开文件,实际上是建立文件的各种有关信息,并使文件指针指向该文件,以便进行其它操作。关闭文件则断开指针与文件之间的联系,也就禁止再对该文件进行操作。在C语言中,文件操作都是由库函数来完成的。

(二)文件打开函数 - fopen()

1、调用格式

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

2、参数与返回值说明

“文件指针名”必须是被说明为FILE 类型的指针变量

“文件名”是被打开文件的文件名

“使用文件方式”是指文件的类型和操作要求

“文件名”是字符串常量或字符串数组

FILE *fp; fp = fopen("test.txt", "r");

1

2

其意义是在当前目录下打开文件test.txt,只允许进行“读”操作,并使fp指向该文件。

FILE *fp; fp = fopen("c:\test.jpg", "rb")

1

2

打开C盘根目录下文件test.jpg,只允许按二进制方式进行读操作。两个反斜线“\ ”中的第一个表示转义字符,第二个表示根目录。

3、文件使用方式

“rt”只读打开一个文本文件,只允许读数据

“wt”只写打开或建立一个文本文件,只允许写数据

“at”追加打开一个文本文件,并在文件末尾写数据

“rb”只读打开一个二进制文件,只允许读数据

“wb”只写打开或建立一个二进制文件,只允许写数据

“ab”追加打开一个二进制文件,并在文件末尾写数据

“rt+”读写打开一个文本文件,允许读和写

“wt+”读写打开或建立一个文本文件,允许读写

“at+”读写打开一个文本文件,允许读,或在文件末追加数据

“rb+”读写打开一个二进制文件,允许读和写

“wb+”读写打开或建立一个二进制文件,允许读和写

“ab+”读写打开一个二进制文件,允许读,或在文件末追加数据

在打开一个文件时,如果出错,fopen将返回一个空指针值NULL。在程序中可以用这一信息来判别是否完成打开文件的工作,并作相应的处理。因此常用以下程序段打开文件:

if ((fp = fopen("c:\test.jpg", "rb") == NULL) { printf("error on open c:\test.jpg file!"); getch(); exit(1); }

1

2

3

4

5

如果返回指针为空,表示不能打开C盘根目录下的test.jpg文件,则给出提示信息“error on open c:\test.jpg!”,下一行getch()的功能是从键盘输入一个字符,但不在屏幕上显示。该行作用是等待,只有当用户从键盘敲任一字符才继续执行后续语句。exit函数返回非零值表示有错误发生。

(二)文件关闭函数 - fclose()

1、调用格式

fclose(文件指针名);

2、参数说明

“文件指针名”必须是被说明为FILE 类型的指针变量。

二、文件读写函数

字符读写函数 :fgetc()和fputc()

字符串读写函数:fgets()和fputs()

数据块读写函数:fread()和fwrite()

格式化读写函数:fscanf()和fprintf()

三、案例演示

1、编写程序 - 演示文件读写.c

1

2

3

4

5

6

7

8

9

10

11

C讲课笔记:文件

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

2、运行程序,查看结果

第一次运行,查看结果

第二次运行,查看结果

说明:因为写文件采用的是追加方式,所以文件c:\love.txt里最后会有两次次输入的内容。

四、课后作业

任务:将C盘Windows目录下的win.ini文件复制到D盘根目录,同时在控制台输出该文件内容。

控制台

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:第五章:C语言函数(中)
下一篇:FusionInsight Kafka删除Topic失败原因及解决方案
相关文章