c++文件操作精细.docx

c++文件操作精细.docx

ID:61766354

大小:15.43 KB

页数:7页

时间:2021-03-19

c++文件操作精细.docx_第1页
c++文件操作精细.docx_第2页
c++文件操作精细.docx_第3页
c++文件操作精细.docx_第4页
c++文件操作精细.docx_第5页
资源描述:

《c++文件操作精细.docx》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、C++通过以下几个类支持文件的输入输出:ofstream:写操作(输出)的文件类(由ostream引申而来)ifstream:读操作(输入)的文件类(由istream引申而来)fstream:可同时读写操作的文件类(由iostream引申而来)打开文件(Openafile)对这些类的一个对象所做的第一个操作通常就是将它和一个真正的文件联系起来,也就是说打开一个文件。被打开的文件在程序中由一个流对象(streamobject)来表示(这些类的一个实例),而对这个流对象所做的任何输入输出操作实际就是对该文件所做的操作。要通过一个流对象打开一个文件,我们使用它的成员函数open()

2、:voidopen(constchar*filename,openmodemode);这里filename是一个字符串,代表要打开的文件名,mode是以下标志符的一个组合:ios::in为输入(读)而打开文件ios::out为输出(写)而打开文件ios::ate初始位置:文件尾ios::app所有输出附加在文件末尾ios::trunc如果文件已存在则先删除该文件ios::binary二进制方式这些标识符可以被组合使用,中间以”或”操作符(

3、)间隔。例如,如果我们想要以二进制方式打开文件"example.bin"来写入一些数据,我们可以通过以下方式调用成员函数open()来实现

4、:ofstreamfile;file.open("example.bin",ios::out

5、ios::app

6、ios::binary);ofstream,ifstream和fstream所有这些类的成员函数open都包含了一个默认打开文件的方式,这三个类的默认方式各不相同:类参数的默认方式ofstreamios::out

7、ios::truncifstreamios::infstreamios::in

8、ios::out只有当函数被调用时没有声明方式参数的情况下,默认值才会被采用。如果函数被调用时声明了任何参数,默认值将被完全改写,而不会与调用参数组合。由于对类ofstream

9、,ifstream和fstream的对象所进行的第一个操作通常都是打开文件,这些类都有一个构造函数可以直接调用open函数,并拥有同样的参数。这样,我们就可以通过以下方式进行与上面同样的定义对象和打开文件的操作:ofstreamfile("example.bin",ios::out

10、ios::app

11、ios::binary);两种打开文件的方式都是正确的。你可以通过调用成员函数is_open()来检查一个文件是否已经被顺利的打开了:boolis_open();它返回一个布尔(bool)值,为真(true)代表文件已经被顺利打开,假(false)则相反。关闭文件(Closing

12、afile)当文件读写操作完成之后,我们必须将文件关闭以使文件重新变为可访问的。关闭文件需要调用成员函数close(),它负责将缓存中的数据排放出来并关闭文件。它的格式很简单:voidclose();这个函数一旦被调用,原先的流对象(streamobject)就可以被用来打开其它的文件了,这个文件也就可以重新被其它的进程(process)所有访问了。为防止流对象被销毁时还联系着打开的文件,析构函数(destructor)将会自动调用关闭函数close。文本文件(Textmodefiles)类ofstream,ifstream和fstream是分别从ostream,istrea

13、m和iostream中引申而来的。这就是为什么fstream的对象可以使用其父类的成员来访问数据。一般来说,我们将使用这些类与同控制台(console)交互同样的成员函数(cin和cout)来进行输入输出。如下面的例题所示,我们使用重载的插入操作符<<://writingonatextfile#includeintmain(){ofstreamexamplefile("example.txt");if(examplefile.is_open()){examplefile<<"Thisisaline.";examplefile<<"Thisisan

14、otherline.";examplefile.close();}return0;}fileexample.txtThisisaline.Thisisanotherline.  从文件中读入数据也可以用与cin的使用同样的方法://readingatextfile#include#include#includeintmain(){charbuffer[256];ifstreamexamplefile("example.txt");if

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。