这种以字节流或二进制流组成的文件被称 为流式文件。以字符为单位进行操作增加 了处理的灵活性。 为了进行文件IO操作,C艹定义了文件流。 文件流是控制台流的扩展,是从控制台流 类派生来的,它继承了控制台流类的所有 特点。文件流类根据自己的需求,增加了 控制台流类所没有的特性。 人民邮电出版社 POSTS tEl OM PRE 动此映
这种以字节流或二进制流组成的文件被称 为流式文件。以字符为单位进行操作增加 了处理的灵活性。 为了进行文件I/O操作,C++定义了文件流。 文件流是控制台流的扩展,是从控制台流 类派生来的,它继承了控制台流类的所有 特点。文件流类根据自己的需求,增加了 控制台流类所没有的特性
文件流可分为3类:输入文件流 ifstream、 输出文件流 ofstream以及输入/输出文件流 istream。 和其他高级语言一样,对文件的读写之前 应打开该文件,在完成操作之后应及时关 闭该文件。 调用相应流中的open成员函数或构造函数, 按照一定的打开方式打开一个文件。 人民邮电出版社 POSTS tEl OM PRE 动此映
文件流可分为3类:输入文件流ifstream、 输出文件流ofstream以及输入/输出文件流 fstream。 和其他高级语言一样,对文件的读写之前 应打开该文件,在完成操作之后应及时关 闭该文件。 调用相应流中的open成员函数或构造函数, 按照一定的打开方式打开一个文件
0pen的函数原型为: void open( const char* szName, int nMode, int pRot=filebuf:: openprot ) 其中, sESame是文件名,它可包含驱动器 符和路径说明; mOde说明文件打开的模式, 表13.1给出了 mOde的取值范围 关闭任何一个流对象所对应的文件,就是用 这个流对象调用 close()成员函数即可 人民邮电出版社 POSTS tEl OM PRE 动此映
open的函数原型为: void open( const char* szName, int nMode, int nProt = filebuf::openprot ); 其中,szName是文件名,它可包含驱动器 符和路径说明;nMode说明文件打开的模式, 表13.1给出了nMode的取值范围。 关闭任何一个流对象所对应的文件,就是用 这个流对象调用close()成员函数即可
表13-1 流模式标志 选项 loSapp 添加模式,所有新数据都写入文件尾部。 los:ate 打开文件时文件指针定位到文件尾,如果程序移动了文件 指针,就把数据写入到当前位置 loSIn 打开文件进行读操作,文件不存在时出错。 打开文件进行写操作,如文件已存在则更新该文件。 lOs:: trunc 如果文件已存在则清空原文件 ios: nocreate打开一个已经存在的文件,如果文件不存在则打开失败。 ios: homeplace打开一个不存在的文件,如果文件存在则打开失败。 ios:: binary 二进制文件(非文本文件) 人民邮电出版社 POSTS tEl OM PRE 点破此处放
表 13-1 流模式标志 选 项 ios::app 添加模式,所有新数据都写入文件尾部。 ios::ate 打开文件时文件指针定位到文件尾,如果程序移动了文件 指针,就把数据写入到当前位置。 ios::in 打开文件进行读操作,文件不存在时出错。 ios::out 打开文件进行写操作,如文件已存在则更新该文件。 ios::trunc 如果文件已存在则清空原文件 ios::nocreate 打开一个已经存在的文件,如果文件不存在则打开失败。 ios::noreplace 打开一个不存在的文件,如果文件存在则打开失败。 ios::binary 二进制文件(非文本文件)
123顺序文件的访间 对文件的操作总是从文件指针位置开始顺 序向后移动,所以称之为顺序文件。 12.3.1建立顺序访问文件 1.建立文本文件 人民邮电出版社 POSTS tEl OM PRE 动此映
12.3 顺序文件的访问 对文件的操作总是从文件指针位置开始顺 序向后移动,所以称之为顺序文件。 12.3.1 建立顺序访问文件 1. 建立文本文件