C语言中的文件操作

时间:2022-09-03 05:08:33

按照字符的方式读取文件

按照行的方式读取文件

按照数据块的方式读取文件

按照格式化的方式读取文件

文件分类

记录文件:具有一定的结构记录组成,分为定长和不定长两种方式

流式文件:按照一个字符一个字符(字节)的方式顺序组成。

按照存储来分类:

设备文件:非存储文件,键盘,鼠标,显示器,打印机等等都属于设备文件

普通文件:存储介质文件(磁盘,磁带等等)

按照数据的组织格式分为:

文本文件:ASCII码文件,每个字符存放着字符的ascii值

二进制文件:数据按照其在内存中存放的样式进行存储

简单来说,用记事本打开不显示乱码,就是文本文件,否则就是二进制文件。

文件的读写是相对于程序来讲的,相对于内存的,

学习文件,网络编程,数据库编程属于横向编程。

文件读写API

fgetc fputc      按照字符读写文件

fputs fgets     按照行读写文件 (读写配置文件)

fread fwirte    按照块读写文件 (大数据块迁移)

fprintf                            按照格式化进行读写文件

fprintf(fp, "%s = %s\n", pKey, pValue);

文件控制api

文件是否结束

文件指针的定位、跳转

fseek(fp, 0L, SEEK_END); //把文件指针从0位置开始,移动到文件末尾

//获取文件长度;

length = ftell(fp);

fseek(fp, 0L, SEEK_SET)

fgets将回车换行也放到内存中,将函数内存首地址+内存的长度,是内存块打包技术。

如何表达一个字符串,有两种方法,第一中是C风格的字符串,也就是以'\0'结尾的字符串,这一种不需要指定字符串的长度

第二种是通过一个指针地址,和一个数据长度联合表达字符串,这一种不限定为C语言的字符串,这一种称为内存块打包技术。

要快速学会调用API,知道是在主调函数分配内存还是被调用函数分配内存。