- 1、本文档共18页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C 措辞中对文件的操纵
C 语言中对文件的操作
文件操作有以下几个内容:
1.将数据从内存输出到文件上,也称“写”文件。
2.将数据从文件输入到内存,也称“读”文件。
一.怎样进行文件操作:
1.设立文件指针
进行文件操作时,必须在程序一开始就先定义文件指针。
FILE *指针类型变量
2.打开文件
将文件指针与磁盘上的文件建立联系,以后对文件的所有操作都将通过文件指针来进行
fopen(文件名, 使用文件方式)
比如: fp = fopen(A.TXT,r);
其中A.TXT表示将要访问的是当前盘当前路径下名为A.TXT的文件。
fopen()函数调用成功,表示在指定的磁盘位置找到文件A.TXT,这时将带回指向A.TXT文件的指针并赋给 fp,这样fp就和文件A.TXT建立了联系。
如果文件打开不成功,fopen()函数将返回一个空指针NULL,为了避免使用空指针,应该按下面的程序段 的书写形式输出失败信息:
if( fp=fopen(A.TXT,r) == NULL)
{
printf(cant find this file!\n);
exit(0);
}
-------------------------------------------------------------------------------------------------
文件使用方式 含义
r(只读) 为输入打开一个文本文件。若指定的文件不存在,则会出错
w(只写) 为输出打开一个文本文件。若文件不存在,系统将用指定名建立一个新文件;若文件已经存 在,则将从起始位置重新写,原有内容被更新
rb(只读) 为输入打开一个二进制文件。功能与r相同
wb(只写) 为输出打开一个二进制文件。功能与w相同
a(追加) 为追加数据打开一个文本文件。若文件不存在,系统将用指定名建立一个新文件;若文件已 经存在,则新数据写在原有内容之后
ab(追加) 为追加数据打开一个二进制文件。其余功能与a相同
r+(读写) 为读/写打开一个已存在文本文件。既可读,也可写,读写总是从文件的起始位置开始;更换 读写操作时不必关闭文件
rb+(读写) 为读/写打开一个已存在的二进制文件。功能与r+相同。可由位置函数设置读写的起始位置
w+(读写) 为读/写建立一个新的文本文件。若文件已存在,原有内容将被更新
wb+(读写) 为读/写建立一个新的二进制文件。功能与w+相同;可由位置函数设置读写起始位置
a+(读写) 为读/写打开一个文本文件。功能与a相同,只是在文件尾部添加新数据后,可以从头开始 读
ab+(读写) 为读/写打开一个二进制文件。功能与a+相同,只是在文件尾部添加新数据之后,可由位置 函数设置开始读的起始位置
-------------------------------------------------------------------------------------------------
二.读、写数据:
读写数据将通过调用标准输入输出函数来完成。这些函数主要包括:
(1)fgetc()和getc():从制定文件中一次读取一个字符
fputc()和putc():一次输出一个字符到指定文件
(2)fgets():从指定文件中一次读取一个字符串
fputs():一次输出一个字符串到指定文件
(3)fread():从指定文件中一次读取一个数据块
fwrite():一次输出一个数据块到指定文件
(4)fscanf():从指定文件中按格式读取数据
fprintf():按指定格式将数据输出到指定文件中
文件定位函数,使“读写位置指针”直接指向指定的读写位置:
fseek():可移动位置指针到指定位置上
ftell():可获得当前位置指针的位置
rewind():“反绕”函数,可使位置指针回到文件的开头
三.关闭文件
当 读、写操作完成之后,必须先将先将文件关闭
fclose(文件指针)
函数调用成功后返回0,否则返回非0值
---------------------------------------------------------------------------------
文档评论(0)