Chinaunix首页 | 论坛 | 博客
  • 博客访问: 425970
  • 博文数量: 116
  • 博客积分: 7087
  • 博客等级: 少将
  • 技术积分: 1175
  • 用 户 组: 普通用户
  • 注册时间: 2005-02-19 23:32
文章分类

全部博文(116)

文章存档

2012年(1)

2011年(2)

2010年(10)

2009年(21)

2008年(18)

2007年(12)

2006年(21)

2005年(31)

我的朋友

分类:

2005-04-05 16:57:27

使用stl,就意味着告别熟悉的c-style编程方式,对文件的处理也毫不例外.

fstream可以用来对文件进行处理,它象对待数据流一样对待文件.

以下给出一个例子.关键是事先要创建fstream.out文件,哪怕是个空文件,也要先创建.因为fstream不会为你创建.

#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();
}

阅读(1244) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~