- 論壇徽章:
- 0
|
使用stl,就意味著告別熟悉的c-style編程方式,對文件的處理也毫不例外.
fstream可以用來對文件進(jìn)行處理,它象對待數(shù)據(jù)流一樣對待文件.
以下給出一個例子.關(guān)鍵是事先要創(chuàng)建fstream.out文件,哪怕是個空文件,也要先創(chuàng)建.因為fstream不會為你創(chuàng)建.
#include
#include
int main ( )
{
using namespace std;
// create a bi-directional fstream object
fstream inout("fstream.out");
// output characters
inout << "Das ist die rede von einem man" << endl;
inout << "C'est l'histoire d'un home" << endl;
inout << "This is the story of a man" << endl;
char p[100];
// seek back to the beginning of the file
inout.seekg(0);
// extract the first line
inout.getline(p,100);
// output the first line to stdout
cout << endl << "Deutch :" << endl;
cout << p;
fstream::pos_type pos = inout.tellg();
// extract the second line
inout.getline(p,100);
// output the second line to stdout
cout << endl << "Francais :" << endl;
cout << p;
// extract the third line
inout.getline(p,100);
// output the third line to stdout
cout << endl << "English :" << endl;
cout << p;
// move the put sequence before the second line
inout.seekp(pos);
// replace the second line
inout << "This is the story of a man" << endl;
// replace the third line
inout << "C'est l'histoire d'un home";
// replace the third line
inout << "C'est l'histoire d'un home";
// seek to the beginning of the file
inout.seekg(0);
// output the all content of the fstream
// object to stdout
cout << endl << endl << inout.rdbuf();
}
本文來自ChinaUnix博客,如果查看原文請點:http://blog.chinaunix.net/u/4353/showart_19595.html |
|