怎么多次输出到txt中,不覆盖过去数据

如何多次输出到txt中,不覆盖过去数据
代码如下,设定在函数里,我想在每次执行函数的时候把内容都输出到这个data里,但是现在
每次新按按钮的时候,都会清除前面的数据。应该怎么办
ofstream outfile("data",ios::binary);//打开文件
if(!outfile)
{
::MessageBox(NULL,_T("打开失败!"),_T("错误提示"),MB_OK);
}
for(i=0;i<4000;i++)
{
if(pointdata[i].b<0||pointdata[i].b>7)
break;
outfile<<"ID="<<pointdata[i].ID<<endl;
outfile<<"x="<<pointdata[i].x<<endl;
outfile<<"y="<<pointdata[i].y<<endl;
outfile<<"b="<<pointdata[i].b<<endl;
outfile<<"p="<<pointdata[i].p<<endl;
outfile<<"sec="<<pointdata[i].sec<<endl;
outfile<<"milisec="<<pointdata[i].milisec<<endl;

}
outfile.close();//关闭流 

------解决方案--------------------
ofstream outfile("data",ios::binary
------解决方案--------------------
ios::app);

------解决方案--------------------
ios::app 添加到文件尾
------解决方案--------------------
在打开文件时先将文件指针定位到文件尾部,然后再输出
outfile.seekp(0,ios_base::end); //定位到文件尾部