- 4
- 0
- 约8.15千字
- 约 32页
- 2017-06-26 发布于湖北
- 举报
C语言课件--文件第13讲
第十二章 文件 文件的定义:存储在外存储器上的一组相关数据的有序集合。 缓冲文件系统:系统在内存中开辟一块缓冲区以便慢速 的外设与其成块地进行数据交换。 r+与w+的区别: r+为读和写而打开文本文件,用这种方式时,指定的文件应当已经存在,既可以读也可以写,在读和写操作之间不必关闭文件,只是对文本文件来说,读和写总是从文件的起始位置开始,在写新的数据时,只复盖新数据所占的空间,其后的老数据并不丢失。 w+首先建立一个新文件,进行写操作,随后可以从头开始读。如果指定的文件已存在,则原有的内容将全部消失。 fgetc( )函数 一般形式: 字符变量=fgetc(文件指针); 功能:从指定文件读入一个字符,该文件必须是以读或读写方式打开 返回值:调用成功时返回读入的字符 文件结束时返回文件结束符 EOF(-1) 文件位置指针 文件型数据结构中,用文件位置指针指向当前对文件进行读写操作的位置。在文件打开时,该指针总是指向文件的第一个字节。读写文件时,每读写一个字符后,该位置指针的值会自动加1,指向下一个字符。改变位置指针的值,也就改变了下一次读写操作在文件中执行时的位置。 feof( )函数 一般形式: feof(文件指针); 功能:判断文件位置指针是否已至文件尾 返回值:函数返回值为1时表示已至文件尾部,为0时则还 未到文件结束处 fputc( ) 函数 一般形式:fputc(字符量,文件指针); 功能:将一个字符写到磁盘文件上去 返回值:调用成功时返回输出的字符,失败时返回EOF(-1) 题目:打开“c:\infile.c”文件,然后将其复制到“c:\outfile.c”上 #include “stdio.h” #include “stdlib.h” void main( ) { FILE *infp,*outfp; char ch; if ((infp=fopen(“c:\\infile.c”, “r”))== NULL) { printf(“Cannot open this infile. \n”); exit(0); } outfp=fopen(“c:\\outfile.c”,”w”); while(!feof(infp)) if((ch=fgetc(infp))!=EOF) fputc(ch,outfp); fclose(infp); fclose(outfp); } fgets( )函数: 一般形式:fgets(字符数组名,n,文件指针); 功能:从指定文件读入n-1个字符到字符数组, 最后加一个 ‘\0’结束符。在读完n-1个字符之前遇到换行符或文 件结束符(EOF),读入即结束 返回值:str的首地址 fputs( )函数 一般形式:fputs(字符串,文件指针); 功能:向指定的文件输出一个字符串, ‘\0’ 结束符不输出。 其中字符串可以是字符串常量、字符数组名或指针 变量 返回值:调用成功时,返回0,否则返回EOF #include stdio.h void main( ) { FILE *fp; char str[100], ch; fp=fopen(“abc.c”,”w”); printf(请输入一串字符:\n); gets(str); fputs(str,fp); fclose(fp); if((fp=fopen(c:\\abc.c, r))== NULL) { printf(file open error.\n); exit(0); } while(!feof(fp)) if((ch=fgetc(fp))!=EOF) putchar(ch); fclose(fp); } fscanf( )函数和fprintf( )函数对磁盘文件读写,使用方便,易理解。但输入输出需要转化,因此,在内存与磁盘频繁交换数据的情况下,最好用fread( )和fwrite( )函数 随机读写:移动文件内部的位置指针到需要读写的位置, 再进行读写 文件定位:按要求移动位置指针,是实现随机读写的关键 fseek( )函数 功能:改变文件的位置指针 题目:设文件“alphabet”中存放了字母表“A┅Z”,现在打开这个文件,用从尾部倒着读的方式将其信息读出并送屏幕显示。 #include
您可能关注的文档
- chapter4细胞破碎.ppt
- chapter2处理器调度2.ppt
- cherry版2014高考英语第一轮复习代词 2.ppt
- Chapter04-2 海洋化学.ppt
- cherry版高考英语一轮复习课件:_名词和冠词.ppt
- cht04-1,2-MIS的战略规划.ppt
- class 4-私募融资-私募投资估价1(投资银行学-清华大学 朱武祥).ppt
- CLCA纠正行动的一个闭环.ppt
- class report 少年派.ppt
- CIPP评价模式(许禾出品).ppt
- 广东省广州省实验中学教育集团2025-2026学年八年级上学期期中考试物理试题(解析版).docx
- 广东省广州大学附属中学2025-2026学年八年级上学期奥班期中物理试题(解析版).docx
- 广东省广州市第八十六中学2025-2026学年八年级上学期期中物理试题(含答案).docx
- 广东省广州市第八十九中学2025-2026学年八年级上学期期中考试物理试题(解析版).docx
- 广东省广州市第二中学2025-2026学年八年级上学期期中考试物理试题(含答案).docx
- 广东省广州市第八十六中学2025-2026学年八年级上学期期中物理试题(解析版).docx
- 广东省广州市第八十九中学2025-2026学年八年级上学期期中考试物理试题(含答案).docx
- 广东省广州市第二中学2025-2026学年八年级上学期期中考试物理试题(解析版).docx
- 2026《中国人寿上海分公司营销员培训体系优化研究》18000字.docx
- 《生物探究性实验教学》中小学教师资格模拟试题.docx
原创力文档

文档评论(0)