文件的打开与关闭一文件的打开方法为了打开一个文件首先_第1页
文件的打开与关闭一文件的打开方法为了打开一个文件首先_第2页
文件的打开与关闭一文件的打开方法为了打开一个文件首先_第3页
文件的打开与关闭一文件的打开方法为了打开一个文件首先_第4页
文件的打开与关闭一文件的打开方法为了打开一个文件首先_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

8.3文件的打开与关闭一、文件的打开方法:为了打开一个文件,首先要为该文件定义一个文件类型指针;然后用C语言提供的fopen()函数打开文件。fopen函数有两个参数:“文件名”与“文件使用方式”,它们均是字符串。一般形式:FILE*文件指针名;…文件指针名=fopen("文件名","文件使用方式");其中,“文件指针名”是FILE类型的指针变量;

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

“使用文件方式”是指文件的类型和操作要求。“文件名”是字符串常量或字符串数组。举例其意义是在当前目录下打开文件teat.dat,只允许进行“读”操作,并使fp指向该文件。举例其功能是打开C盘上子目录TC里的文件teat.dat,这是一个二进制文件,只允许按二进制方式进行读操作两个反斜线“\\”中的第一个表示转义字符,第二个表示目录。FILE*fp;fp=(“test.dat","r");FILE*fp;fp=("C:\\TC\\teat.dat","rb");char*mode含义注释“r”只读打开文本文件,仅允许从文件读取数据“w”只写打开文本文件,仅允许向文件输出数据“a”追加打开文本文件,仅允许从文件尾部追加数据“rb”只读打开二进制文件,仅允许从文件读取数据“wb”只写打开二进制文件,仅允许向文件输出数据“ab”追加打开二进制文件,仅允许从文件尾部追加数据“r+”读写打开文本文件,允许输入/输出数据到文件“w+”读写创建新文本文件,允许输入/输出数据到文件“a+”读写打开文本文件,允许输入/输出数据到文件“rb+”读写打开二进制文件,允许输入/输出数据到文件“wb+”读写创建新二进制文件,允许输入/输出数据到文件“ab+”读写打开二进制文件,允许输入/输出数据到文件对于文件使用方式有以下几点说明:(1)文件使用方式由“r,w,a,t,b,+”这六个字符拼成,各字符的含义是:r(read)表示读出,w(write)表示写入,a(append)表示在文件末尾追加,t(text)代表文本文件,可省略不写,b(binary)代表二进制文件,+表示读和写。(2)凡用“

r”打开一个文件时,该文件必须已经存在,且只能从该文件读出。(3)用“w”打开的文件只能向该文件写入。若打开的文件不存在,则以指定的文件名建立该文件,若打开的文件已经存在,则将该文件删去,重建一个新文件。(4)若要向一个已存在的文件追加新的信息,只能用“a”方式打开文件。但此时该文件必须是存在的,否则将会出错。(5)在打开一个文件时,如果出错,fopen将返回一个空指针值NULL。在程序中可以用这一信息来判别是否完成打开文件的工作,并作相应的处理。例如,下列程序段可用来检查d盘上的一个文件file11.dat是否成功打开,并且进行相应处理:if((fp=fopen("d:\\file11.dat","rb")==NULL){printf("\ncannotopenthefiled:\\file11.dat");exit(0);}这个程序段的作用是:如果返回的指针为非空表示正常打开文件,若为空则表示不能打开d盘上的文件file11.dat文件,打印出错信息“cannotopenthefiled:\\file11.dat”,然后执行exit(0)退出程序。标准输入文件(键盘),标准输出文件(显示器),标准出错输出(出错信息)是由系统打开的,可直接使用。二、文件的关闭方法:使用fclose()函数。一般形式:fclose(文件指针);举例FILE*fp;…fclose(fp);如果不关闭文件而直接使程序停止运行,这时会丢失缓冲区中还未写入文件的部分信息

将fp指向的缓冲区中的数据存放到外存储器的文件中,然后释放该缓冲区,使文件指针变量不再指向与该文件对应的FILE结构,从而断开与文件的关联。操作正常返回0,否则返回EOF(是在stdio.h文件中定义的符号常量,值为-1)。#include<stdio.h>#include<stdlib.h>voidmain(){

FILE*fpFile;intnStatus=0;If(fpFile=fopen("a.txt","w+"))==NULL){printf(“Openfilefailed!\n”);

exit(0);}fprintf(fpFile,"%s","TestFile");nStatus=fclose(fpFile);printf("%d",nStatus);}【例1】打开名为“a.txt”的文件,并向文件输出字符串“TestFile”,然后关闭文件,同时在屏幕上输出fclose的返回值。中断正在执行的程序读写方式用exit函数时加/*定义声明文件指针*/FILE*fp;/*打开文件*/fp=fopen("文件名","r");/*判断是否打开文件*/if(fp==NULL){/*当文件打开失败时的处理*/}/*对文件进行读写操作*//*关闭文件*/fclose(fp);文件操作的一般步骤例8-1

以只读写方式打开一个名为test.txt的文件,向文件中写入字符串”cprogram”,然后关闭文件,并判断文件是否成功打开与关闭。#include<stdio.h>voidmain(){FILE*fp;intk;fp=fopen("test.txt","w+");if(fp==NULL){printf("Fileopenerror\n");

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论