ファイルの加工をしようと次のようなコードを書いてみたのですが、
なぜかファイルを上書きしてくれません。どの辺りがおかしいのでしょうか。
コンパイラはborlandです。

using namespace std;

int main()
{
fstream file("foo.txt",ios::in | ios::out);

string tmp;
vector<string> buf;
while(getline(file,tmp)){
buf.push_back(tmp);
}

file.seekg(0);

for(unsigned int i = 0; i != buf.size(); i++){
中略
file << buf[i] << endl;
}

file.close();

return 0;
}