新课件14.文件操作.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第十一章 文件操作 目标 了解文件访问基本概念 了解系统调用I/O与基于流的I/O 掌握文件访问的C库函数 本章结构 文件访问 每个文件拥有一个索引节点,而每个索引节点可以有一个或多个指向它的符号名,即文件的路径名 文件I/O操作有两种基本方式: (1)系统调用I/O 低一级的I/O,在处理设备、管道、网络套接字特殊类型的文件时候必须用 (2)基于流的I/O 建立在系统调用的I/O方法上的C函数库,基于系统调用方法的封装并增加了额外的功能 文件访问 系统调用I/O与基于流的I/O a:系统调用直接处理文件描述符,而流函数则处理“FILE *” 类型的文件句柄 b:基于流的I/O有自动缓冲,支持格式化输出,fprintf函数 c: 基于流的I/O替用户处理有关系统调用的细节,比如系统调用被信号中断的处理等等 流I/O的使用:通过终端或文件交换信息 系统调用I/O的使用: 设备文件控制、网络或管道通信 基于流的I/O 文件句柄指向一个包含文件信息的结构体, 包括: 缓冲区的地址 缓冲区中当前字符的位置 文件的访问模式 # include stdio.h FILE *fp; 基于流的I/O—— 打开、创建一个文件 基于流的I/O—— 关闭一个文件 基于流的I/O——关闭一个文件 基于流的I/O—— 文件的随机存取 基于流的I/O—— 按字符读文件 基于流的I/O —— 按字符读文件 基于流的I/O—— 按字符写文件 基于流的I/O —— 按字符写文件 基于流的I/O —— 按字符写文件 基于流的I/O—— 字符串读写文件 基于流的I/O——字符串写读文件 基于流的I/O ——字符串读写文件 基于流的I/O ——字符串读写文件 基于流的I/O ——字符串读写文件 基于流的I/O—— 按字符读写文件 基于流的I/O——按字符读写文件 基于流的I/O—— 文件的格式化输入输出 基于流的I/O—— 文件的格式化输入输出 文件访问概念 文件操作 文件创建、打开、关闭、读写 基于流文件的I/O 文件的随机存取、格式输入输出 FILE *fopen( const char *path,const char *mode) ; 模式 “ r ” “ r+ ” “ w ” “ w+ ” “ a ” 模式 “ a+ ” 模式说明 只读 读写 只写 读写,存在则清空,不存在创建新的,指针指向文件首 追加,存在指针指向尾,不存在创建新的 追加,存在清空,不存在创建新的 注: 加“b”表示打开的文件是二进制文件而不是纯文本文件 FILE *fclose( FILE *p) ; Eg: #include stdio.h int main(int argc, char **argv) { FILE *fp; if(argc != 2) { printf(usage:fopen\n); return -1; } Eg: fp = fopen(argv[1], w+); if( fp == NULL ) perror(asdffd fopen error); else { printf(fopen [%s] success\n, argv[1]); if(fclose(fp) != 0 ) perror(fclose error); else printf(fclose [%s] success\n, argv[1]); } return 0; } int fseek(FILE *stream, long offset,int whence ) ; whence: SEEK_SET 从文件头开始计算 SEEK_CUR 从文件当前位置开始计算 SEEK_END 从文件结尾开始计算 long ftell(FILE *stream ) ; 获取当前指针位置

文档评论(0)

开心农场 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档