流类库与输入输出_第1页
流类库与输入输出_第2页
流类库与输入输出_第3页
流类库与输入输出_第4页
全文预览已结束

下载本文档

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

文档简介

本文格式为Word版,下载可任意编辑——流类库与输入输出流类库与输入/输出。

本章主要内容:

a)I/O流的概念

b)预定义的标准流与提取和插入运算符c)使用I/O成员函数输入流d)文件流2.概述

a)输入/输出(input/output)是指程序与计算机的外部设备之间进行信息交换。b)输入操作指从指定设备收取一个字符序列。

c)输出操作将一个对象转换为一个字符序列,输出到某一个设备;d)输入输出操作可以看成是字符序列在源和目的之间的滚动。将执行这个输入/

输出操作的类体系称为流类,提供这个流类实现的系统称为流类库。

e)在C++中,没有专门的输入/输出语句,为了便利用户灵活地完成输入/输出,C+提

供了功能强大的输入/输出流类库。

f)C++的I/O系统为了向程序员提供一个统一的接口,使程序的设计尽可能地与所访

问的具体设备无关,在程序员与被使用的设备之间提供了一个抽象的概念——流。g)读操作在流数据抽象中被称为(从流中)提取>>,h)写操作被称为(向流中)插入>〞和“>)很相像,

ii.主要的不同点是get函数在读入数据时包括空白字符。(注:要单独提取换行

符)

c)(3.)用put()输出一个字符

i.cout>ch;

iv.(4)用完文件后使用成员函数关闭文件e.g.infile.close();

b)文件流类不是标准设备,没有cout那样的预定义的全局对象,要定义文件流对象,需

规定文件名和开启方式.c)一.开启文件有两种方法:

i.(1)建立流对象时使用构造函数将一个文件和这个流对象连接起来:ifstream::ifstream(char*,int=ios::in,int=filebuf::openprot);ofstream::ofstream(char*,int=ios::out,int=filebuf::openprot);

fstream::fstream(char*,int,int=filebuf::openprot);文件名开启方式(可组合,缺省为文本文件)

ii.(2)首先建立一个对象,在需要时再由OPEN()iii.函数将流对象和一个具体的文件相连

iv.ifstream::open(char*,int=ios::in,int=filebuf::openprot);v.ofstream::open(char*,int=ios::out,int=filebuf::openprot);vi.fstream::open(char*,int,int=filebuf::openprot);vii.e.g.

viii.ofstreamoutput;

ix.output.open(“output.dat〞);

14.文本文件的使用

a)对文本文件读写方法与标准输入/输出流cin,cout的使用方法一致.15.二进制文件的使用

a)对于二进制文件的输入与输出,通过文件流的成员函数来实现.

i.1.文件的读写操作

istream

ii.将由其次参数所指定的字节数读到将由第一参数所指定的字符型指针所指向

的存储单元中。

ostream

iii.将由其次参数所指定的字节数,第一参数指定要写到文件中的字节串的起始地

址。

iv.文本方式下:如遇换行符(十进制10),自动被扩展为回车换行符(十进制13)v.随机访问文件

1.文件的访问方式有两种:顺序与随机2.支持随机访问的成员函数:

3.istream定位(从beg为参考点)4.istream5.streamposistream::tellg();--返回当前文件指针值

6.ostream定位(从beg为参考点)7.ostream8.streamposistream::tellp();--返回当前文件指针值9.注:typedeflongstreampos10.typedeflongstreamoff11.enumseek_dir{

12.beg=0,

温馨提示

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

评论

0/150

提交评论