09文件.pdfVIP

  1. 1、本文档共82页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
09文件

8 流与文件 北京大学计算机系 代亚非 流 把一串字节从内存中送到显示器、打印机是输出流 把一串字节从键盘送到内存是输入流。 把一串字节从内存送到外存是文件流。 C++中的流是字节序列,流本身不区分类型,由应 用程序的输入输出将字节的含义和字节关联起来。 流的对象cin,cout,,是操作符,还可以有加 入一些控制格式。 iostream是流的头文件 cin,cout是流对象 有关文件的概念和名词 文件—— 是信息的集合,是信息存放在外存中的一 种形式。可以长期保存。 EOF—— 文件的结束符。 C++中的文件视为信息流,文件的读写是按顺序进 行的。可以以字符为单位读写,也可以以“行”为单 位读写。一行是以“\n”为结束的一串字符。 文件指针—— 是指向含有文件信息结构的指针。文 件指针又称内部文件名。 对文件进行操作,先要将文件打开。所谓“打开文 件” ,就是在内存中为文件建立一个缓冲区,文件 指针就要指向缓冲区的首地址。 有关文件的概念和名词 文件不被使用时保存在外存储器(硬盘) 文件缓冲 文件操作时在内存开辟一块缓冲区 p 每次打开一个文件时,指针指向缓冲区的 首地址,既文件的第一个记录的首地址 每次读写操作,指针会自动下移一个记 录。 文件被关闭或者一些指定的操作时,缓冲 区的内容会被写到硬盘 一般文件 特点:操作前需打开,操作后需关闭。开和闭均是 通过函数进行的。 打开文件就是要在内存中建立缓冲区,如打开成 功,打开函数返回一个内存地址值,由一个文件指 针接收。以后的操作使用这个指针。如内存不可建 立缓冲区,则打开失败,打开函数返回NULL。 关闭文件很重要,是要将文件送回磁盘,并从内存 中清除。及时释放内存空间,并可保证文件安全。 文件类型 ASCII码文件(文本文件): 每个字符以ASCII码形式存储。 二进制文件 按数据的二进制形式存储在磁盘上 例如: 1000000是整型数据,用二进制表示占四个字节,如 用ASCII码输出,则占7个字节。 00001111 00110000 00110000 00110000 文件流:一连串的字节或字符,不考虑记录的界限 文件流 文件流:以外存文件为输入输出对象的数据流。 ifstream 类:用来支持从磁盘文件的输入。 ofstream 类:用来支持往磁盘文件的输出。 fstream 类: 用来支持从磁盘文件的输入输出。 操作文件首先要用类生成一个具体的操作对象 例如:ifstream fin; //fin就是一个具体的对象。 打开文件可以加选项,说明文件的类型: ios::app (追加文件) ios::in(ifstream 默认) ios::out(ofstream 默认) ios::binary(以二进制形式打开文件) 文件流 建立一个文件 在当前目录下打开文件,“data”是文件名。 ifstream fin(“data”); fin 是输入文件类型的对象名,从文件里读取数据, “data” 必须已经存在,如果不存在,则打开文件失败 //在指定目录下打开文件,data是文件名 ofstream fout (“E:/C/data”); fout 是输入文件类型的对象名 ,往文件里写数据,如果不存 在“data”文件,则以这个名字建立一个新文件 fstream myFile(file

文档评论(0)

rovend + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档