新手关于学习C语言文件和文件操作的有感

一.文件操作速览

1.文件的打开和关闭  fopen  fclose
2. 流和标准流 :流就是不同设备上的数据内容
3.操作过程 :打开流   读取流  关闭流

4.文件指针  FILE*的文件指针

5.其中r是read的缩写。其中w是write的缩写
6."r"错误运行会报错    "w"报错会新建文件夹   如果成功的话会清空文件再添加内容 

7."wb"   "rb"就是 读写二进制得内容

8.free(地址名),就是释放内存,防止内存泄漏

二.绝对路径  相对路径

    . 表示当前路径      .. 表示上一级路径

三.常用输出 输入符

fgetc是字符输入函数     读字符
fputc是字符输出函数     写字符
fgets是文本输入函数     读字符串
fputs是文本输出函数     写字符串
fscanf是格式化输入函数
fprintf是格式化输出函数

注意:test.txt 是我们自己建立的,在自己建立的文件夹里面

!!!还要注意

如果不打开文件拓展名的话,铁汁们建立的真实名字是test.txt有可能是test.txt.txt

1.fputc实现

2.fgetc实现 

注意每一次都会向后一位找内容

3.fputs实现

这是将 I am student 写入文件中

4.fgets

读出文本中的内容

5.stdin  stdout

stdin是标准输入流   stdout标准输出流

6.fprintf  的实现

7.fscanf 的实现

四.对比-组函数

1.scanf/fscanf/sscanf
2.printf/fprintf/sprintf
(1)scanf/printf  针对标准输入流/标准输出流    格式化  输入/输出函数
(2)fscanf/fprintf   针对所有输出入/出流的     格式化  输入/输出函数
(3)sscanf/sprintf  sprintf 其实是将格式化的数据写到字符串中    可以理解为将数据转换成字符串 
 sscanf是从字符串提取格式话的数据   你可以理解为,将字符串转化为格式化的数据

sprintf  和  sscanf

五.二进制文本的读写

1.fwrite

写入二进制文本

2.fread

六.文件的随机读写


SEEK_SET这是起始位置
SEEK_CUR 是当前位置
SEEK_END  文件的末尾
fseek,根据文件的位置和偏移量来定位文件指针(文件内容的光标)
ftell返回文件相对于起始位置的偏移量
rewind 让文件位置回到文件的起始位置

七.文件结束的判定


feof  

经常被错误使用的函数  以为feof 以为feof函数是用来判断是否结束的,但是其实并不是!!!
EOF 是end of file  文件结束的标志
在读取文件的过程中,有可能文件结束
结束的原因
1.遇到文件的末尾
2.遇到错误了
ferror 反映的是错误,如果是发生错误则会标记一下,它是检测错误的标记