2024年4月20日发(作者:)
标签:
2015-01-1317:431880人阅读(0)
分类:
c/c++编程(8)
版权声明:本文为博主原创文章,未经博主允许不得转载。
一、文件的输入输出
头文件fstream定义了三个类型支持文件IO:ifstream从给定文件读取数据、ofstream
向一个给定文件写入数据、fstream读写给定数据。这些类型与cin和cout的操作一
样,我们可以用IO操作符来读写文件,还可以用getline从一个ifstream读取数据。
1、getline()函数
的函数原型为:
[cpp]
1. istream&getline(istream&is,string&str,chardelim);
2. istream&getline(istream&&is,string&str,chardelim);
3. istream&getline(istream&is,string&str);
4. istream&getline(istream&&is,string&str);
通常我们使用getline函数读取一整行,该函数接受一个输入流和一个string对象,
函数从给定的输入流中读取内容,直到遇到换行符为止,然后将所读的内容存入到
个string对象中。
另外,当函数为istream&getline(istream&is,string&str,chardelim);形式时,函数遇到
delim也会停止。
2、使用文件流对象
当我们想要读入一个文件时,可以定义一个文件流对象,并将对象与文件相关联起
来,每一个文件流类都定义了一个名为open的成员函数,完成一系列系统相关的操
作。
函数的原型为:
[cpp]
1. voidopen(constchar*filename,ios_base::openmodemode=ios_base::out);
2. voidopen(conststring&filename,ios_base::openmodemode=ios_base::out);
文件模式(mode)有一下几种:
[cpp]
1. ofstreamoutfile("E:",ofstream::app);
上述代码打开文件,如果不存在,系统会创建此txt文件,并且定位到文件末尾。
打开的文件使用完成后一定要关闭,fstream提供了成员函数close()来完成此操
作。
例:从文件中读取数据并写入到中
[cpp]
1. #include""
2. #include
3. #include
4. #include
5. #include
6. usingnamespacestd;
7. int_tmain(intargc,_TCHAR*argv[])
8. {
9. ifstreammyfile("E:");
10. ofstreamoutfile("E:",ofstream::app);
11. stringtemp;
12. if(!())
13. {
14. cout<<"未成功打开文件"< 15. } 16. while(getline(myfile,temp)) 17. { 18. outfile< 19. } 20. (); 21. return0; 22. } 二、string流 string头文件定义了三个类型来支持内存IO,istringstream向string写入数据, ostringstream从string读取数据,stringstream既可从string读取数据也可向string写 数据,就像string是一个IO流一样。


发布评论