c++输入输出流及文件操作探索.ppt

  1. 1、本文档共88页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
7.1.1 缓冲区 缓冲区buffer是内存中的一个临时存储区, 用来匹配不同部件数据传输率的差异。 通过使用缓冲的方式可以更高效地处理输入输出, 信息从设备和程序之间传输时可临时存储在缓冲区中,等待累积成数据块或合适的事机再传送的目的地。 7.2 标准流对象及常用成员函数 标准流对象是在std命名空间中定义的流对象,提供内存与常用外部设备进行数据交互功能。 声明在头文件iostream 7.2.1 标准输出流 标准错误流对象cerr(console error ) 标准错误流对象clog(console log的) 作用都是在标准输出设备上显示出错信息, 两个对象一般关联显示进行器输出。 区别是 cerr不经过缓冲区,直接向显示器上输出有关信息,而clog中的信息存放在缓冲区中,缓冲区满后或遇endl时输出。 * 在创建文件流对象时,可以把它与磁盘上的文件关联起来。还可以创建与特定文件没有关联的文件流对象,在程序运行中使用成员函数将其和特定文件建立关联。流与文件的关联关系如图5.6所示。连接为了读写磁盘文件,该文件必须被打开,操作系统将其关联到程序中,并根据设定的方式使用该文件。将文件流关联到具体文件的功能可以由打开函数完成。可以修改与文件流关联的磁盘文件,也可以在不同时间用同一个ofstream对象写入不同的文件。程序不需要文件时,文件应从该流中断开,下面我们讨论文件的打开和关闭操作。 * prot决定文件的访问方式,取值为: 0 普通文件 1 只读文件 2 隐含文件 3 系统文件 一般情况下,该访问方式使用默认值。 文件流的构造函数和 open ( ) 函数用于打开文件, 析构函数在流对象被删除之前关闭文件 * * 在打开或关闭文件时,很多原因会造成操作失败。例如,打开函数中外部文件名与磁盘上的某个文件名不匹配,或者找不到相关文件,这些是常见的错误。当创建一个新的文件而磁盘没有足够的空间,文件的打开操作可能失败。 为了保证文件的安全操作,应该对其进行测试。有几种方法可以检测文件是否成功打开,最常用的方法是在条件表达式中使用取反操作符(!)测试流状态, * 其中,第一个参数指向接受字符数据的字符数组 第二个参数指定字符数组最多可容纳的字符个数 第三个参数用于指定一个终止符,缺省为换行符 操作遇到终止符或提取到规定个数字符时,提取终止 get ( ) 不从流中提取终止字符,终止字符仍在输入流中 getline ( ) 从流中提取终止字符,但终止字符被丢弃 * 在创建文件流对象时,可以把它与磁盘上的文件关联起来。还可以创建与特定文件没有关联的文件流对象,在程序运行中使用成员函数将其和特定文件建立关联。流与文件的关联关系如图5.6所示。连接为了读写磁盘文件,该文件必须被打开,操作系统将其关联到程序中,并根据设定的方式使用该文件。将文件流关联到具体文件的功能可以由打开函数完成。可以修改与文件流关联的磁盘文件,也可以在不同时间用同一个ofstream对象写入不同的文件。程序不需要文件时,文件应从该流中断开,下面我们讨论文件的打开和关闭操作。 * * * 其作用是从输入流中读取n-1个字符,赋给指定的字符数组(或字符指针指向的数组),如果在读取n-1个字符之前遇到指定的终止字符,则提前结束读取。如果读取成功则函数返回非0值(真),如失败(遇文件结束符) 则函数返回0值(假)。 * 其作用是从输入流中读取n-1个字符,赋给指定的字符数组(或字符指针指向的数组),如果在读取n-1个字符之前遇到指定的终止字符,则提前结束读取。如果读取成功则函数返回非0值(真),如失败(遇文件结束符) 则函数返回0值(假)。 第一个参数和函数的类型都必须是 istream 或 ostream类型类型, 第二个参数是要进行输出或输入操作的类。 C++中把数据之间的传输操作称作流。 文件流的构造函数和 open ( ) 函数用于打开文件, 析构函数在流对象被删除之前关闭文件 * streambuf类管理与流相关的数据缓冲区,提供访问、填充和刷新缓冲区的方法 ios是抽象基类,包含一个streambuf类的指针作为数据成员 istream和ostream类是ios类的派生类,它们分别支持输入操作和输出操作 iostream是istream类和ostream类共同的派生类,继承各种输入输出成员。 ifstream和ofstream类分别支持对文件的输入操作和对文件的输出操作。 * 1. cout流对象 cout是console output的缩写,意为在控制台(终端显示器)的输出。 (1) c

文档评论(0)

***** + 关注
实名认证
内容提供者

我是自由职业者,从事文档的创作工作。

1亿VIP精品文档

相关文档