没有合适的资源?快使用搜索试试~ 我知道了~
首页C语言文件操作函数大全(详细讲解)
C语言文件操作函数大全(详细讲解)
需积分: 18 24 下载量 38 浏览量
更新于2023-03-03
收藏 87KB DOC 举报
C语言文件操作函数大全(详细全面的讲解并附有相关实例分析)。分享既是德啊!
资源详情
资源推荐
语言文件操作函数大全
2007-10-17 19:21
语言文件
两种文件存取方式输入输出方式
顺序存取
直接存取
数据的两种存放形式
文本文件
二进制文件
文件指针
定义文件类型指针变量的一般形式
指针变量名
例如
打开文件
在使用文件之前需打开文件在 里使
用 函数打开文件格式为
文件名文件使用方式
此函数返回一个指向 类型的指针
如
如果调用成功 就指向 否则返
回为 所以为了保证文件的正确使
用要进行测试采用如下语句
! "#$
% &
'
最常用的文件使用方式及其含义如下
为读而打开文本文件不存在则
出错
(为读而打开二进制文件
)为写而打开文本文件若不存在
则新建反之则从文件起始位置写原内
容将被覆盖
*)(为写而打开二进制文件
+!为在文件后面添加数据而打开文
本文件若不存在则新建反之在原文
件后追加
,!(为在文件后面添加数据而打开
一个二进制文件
最常用的文件使用方式及其含义如下
-.为读和写而打开文本文件读
时从头开始在写数据时新数据只覆盖
所占的空间其后不变
/(.为读和写而打开二进制文件
只是在随后的读写时可以由位置函数设
置读和写的起始位置
0).首先建立一个新文件进行写操
作随后可以从头开始读若文件存在原
内容将全部消失
&)(.功能与).同只是在随
后的读写时可以由位置函数设置读和写
的起始位置
最常用的文件使用方式及其含义如下
!.功能与!相同只是在文件
尾部添加新的数据后可以从头开始读
!(.功能与!.相同只是在文
件尾部添加新数据之后可以由位置函数
设置开始读的起始位置
* 关闭文件
当文件的读写操作完成之后使用
1# 函数关闭文件格式如下
1#文件指针
如1#
+ 调用 2 12 1和
3 13 1函数进行输入和输出
调用 3 1或 3 1函数输出一个
字符
调用形式为
3 11"
功能是将字符 1" 写到文件指针 所指
的文 件中去当输出成功3 1 函数返
回所输出的字符否则返回一个 4
值4 是在 # 5" 库函数文件中定
义的符号常量其值等于6
1
+ 调用 2 12 1和
3 13 1函数进行输入和输出
例如把从键盘输入的文本按原样输出到
名为 5! 文件中用字符7作为
键盘输入结束标志
8135
95:!
3
1"!1"
3 )
! "#;$
% &
'
1"2 1"!
)"1";<7<
3 11"3
1"2 1"!'
1#3
'
调用 2 1或 2 1函数输入一个
字符
调用形式为
1"2 1
功能是从 指定的文件中读如一个字
符并把它作为函数值返回
例如把一个已存在磁盘上的
5! 文本文件中的内容原样输
出到终端屏幕上
8135
=5:!
1"!1"
5!
!< "#;$
% &'
1"2 1
)"1";4
3 1"!1"1"2 1'
1#
'
, 判断文件结束函数
4 可以作为文本文件的结束 标志但
不能作为二进制文件的结束符 函
数既可以判断二进制文件又可以判断文
本文件
例编写程序用于把一个文本文件源
复制到另一个文件目的中源文件名和
目的文件名由命令行输入命令形式如
下
可执行程序名 源文件名 目的文件名
8135
=51>
=5:! !211"!
!2=?@
3
!21
!2=?@
3 !2=?@)
1>3
1#1#3
'
#!21A
B"!:#
:!>;;$
#
B"!!:#
3 3 3 ;;$
'
=51>
3
1"!1"
1"2 1
)";
3 11"3
1"2 1'
'
-#1! 函数和 函数
#1! 函数
#1! 只能从文本文件中按格式输入
2
和 #1! 函数相似只不过输入的对象
是磁盘上文本文件中的数据调用形式
为
#1!文件指针格式控制字符串输入
项表
例如#1!C5C5D!D(
#1!# 5C5C5D!D(
等价于 #1!C5C5D!D(
函数
函数按格式将内存中的数据转
换成对应的字符并以 EF 代码形式
输出到文本文件中 函数和
函数相似只是将输出的内容按
格式存放到磁盘的文本文件中调用形式
如下
文件指针格式控制字符串输
出项表
如 C5C5%>
以下语句 # 53 C5
C5%>
/2 # 函数和 3 # 函数
2 # 函数
2 # 函数用来从文件中读入字符串调
用形式如下
2 ##
函数功能是从 所指文件中读入 6
个字符放入 # 为起始地址的空间内如
果在未读满 6 个字符时则遇到换行符
或一个 4 结束本次读操作并已 #
作为函数值返回
/2 # 函数和 3 # 函数
3 # 函数
3 函数把字符串输出到文件中函数
调用形式如下
3 ##
注意为了便于读入在输出字符串时应
当人为的加诸如$这样的字符串
8135G# 5"A
8135G# !:A
:! !211"!!2=?@
1"!!?&@
1"!!";
" %
) .
HHH ;
HHH%
'
HHHHH3 #!
)5II
2 #!&
C#$!
1#
3&
'
0!5 函数和 ) 函数
例如有如下结构体
# 31 #
1"!3:?/@
J! :K?+@
'#?&@
以下循环将把这 & 个元素中的数据输
出到 所指文件中
&G&..
) D#?@#L# 31
#
0!5 函数和 ) 函数
以下语句从 所指的文件中再次将每个
学生数据逐个读入到 # 数组中
&
!5D#?@#L# 31
#
)";
..
!5D#?@#L# 31
#
'
3
& 文件定位函数
#K 函数
#K 函数用来移动文件位置指针到指
定的位置上接着的读或写操作将从此位
置开始函数的调用形式如下
#KM# 2
文件指针
M# 以字节为单位的位移量为长整
形
2是起始点用来指定位移量是以
哪个位置为基准的
#K 函数
位移量的表示方法
标识符 数字 代表的起始点
FNFB&文件开始
FNO文件末尾
FNP文件当前位置
假设 已指向一个二进制文件则
#K&FNFB
#K6
&#L FNO
对于文本文件位移量必须是 &如
#K&FNFB
#K&FNO
函数
函数用以获得文件当前位置指针的
位置函数给出当前位置指针相对于文件
开头的字节数如
2
当函数调用出错时函数返回6
我们可以通过以下方式来测试一个文件
的长度
#K&FNO
)5 函数
调用形式为
)5
函数没有返回值函数的功能是使文件的
位置指针回到文件的开头
& 文件应用
在磁盘上的 # % 文件中放有 & 个
不小于 的正整数用函数调用方式编写
程序要求实现
在被调函数 : 中判断和统计
& 个整数中的素数以及个数
在主函数中将全部素数追加到磁盘文
件 # % 的尾部同时输出到屏幕上
8135
8135
: !?@
QK&J!2&
&QQ!?@
CQ&
J!2&(!K'
#J!2
J!2
!?K@!?@K..'
'
3K
'
=5:!
!?&@
# 6 % .
&G&..
#1!C5D!?@
:!
#K
& C5!?@
C5!?@
'
1#
'
文件操作函数全
1!(清除文件流的错误旗标)
相关函数
表头文件 8135G# 5"A
定 义 函 数 =5 1!
# !:
4
函 数 说 明 1! ( ) 清 除 参 数
# !: 指定的文件流所使用的错误旗
标。
返回值
1#(关闭文件)
相 关 函 数
1#,R3#",,# (3
表头文件 8135G# 5"A
定 义 函 数 1#
# !:
函 数 说 明 1# 用 来 关 闭 先 前
打开的文件。此动作会让缓冲
区内的数据写入文件中,并释放系统所
提供的文件资源。
返回值 若关文件动作成功则返回 &,有
错误发生时则返回 4 并把错误代码
存到 。
错误代码 SEO 表示参数 # !:
非已打开的文件。
范例 请参考 ()。
5 (将 文 件 描述 词 转 为文 件 指
针)
相关函数 ,,1#
表头文件 8135G# 5"A
定 义 函 数 5
5#1# 1"!:5
函数说明 5会将参数 5#
的文件描述词,转换为对应的文件指针
后返回。参数 :5字符串则代表着
文件指针的流形态,此形态必须和原先
文件描述词读写模式相同。关于 :5
字符串格式请参考 。
返回值 转换成功时返回指向该流的文件
指针。失败则返回 ,并把错误代
码存在 中。
范例
8135G# 5"A
:!
5&T).T
TC#$TT";T
1#
'
执行 ";
(检查文件流是否读到了文件尾)
相 关 函 数
,2 1,2 #,!5
表头文件 8135G# 5"A
定义函数 # !:
函数说明 用来侦测是否读取到了
文件尾,尾数 # !: 为 ()
所返回之文件指针。如果已到文件尾则
返回非零值,其他情况返回 &。
返回值 返回非零值代表已到达文件尾。
R3#"(更新缓冲区)
相 关 函 数
) ,,1#,# (3
表头文件 8135G# 5"A
定 义 函 数 R3#"
# !:
函数说明 R3#"会强迫将缓冲区内的
数据写回参数 # !: 指定的文件中。
如 果 参 数 # !: 为
,R3#"会将所有打开的文件
数据更新。
返回值 成功返回 &,失败返回 4,
错误代码存于 中。
错误代码 SEO参数 # !:指定
的文件未被打开,或打开状态为只读。
其它错误代码参考 ) ()。
2 1(由文件中读取一个字符)
相 关 函 数
,!5,#1!,2 1
表头文件 135G# 5"A
5
剩余23页未读,继续阅读
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功