如何将vector中的数据写入到txt中

1,若vector中的元素类型不是stl中的类,即为vector<T> vec, T 是自定义类型,那么可以在T类结构中重载运算符<<。

例如:

#include"iostream"
#include<vector>
#include"fstream"
#include"ostream"
using  namespace  std;
class  person
{
public :
     person( char  *, char *);
     friend  ostream & operator<<(ostream &os,person &p)//友元函数定义在person类中,可以操作person中的成员。
     {
         os << .Id << p.Name;
        return  os;
     }
private
    char Id [10];
    char  Name[10];
};
inline  person::person( char  *name,  char  *id)
{
  strcpy (Id, id);
  strcpy (Name, name);
}
int  main()
{
  fstream file;
  person *temp;
  int  i;
  file.open( "result.txt" ,ios_base::out);
  vector<person>stu;
  for  (i = 0; i < 3; i++)
  {
   char   name[10], id[10];
   cin >> name >> id;
   temp =  new  person(name, id);
   stu.push_back(*temp);
  }
  for  (i = 0; i <stu.size(); i++)
  {
  
   fp << stu[i];
  }
  fp.close();
  system ( "pause" );
  return  0;
}
2,若vector中元素为基本数据类型,比如int,则先把vector中的元素转换成一个string,再整行输出。

  • 5
    点赞
  • 37
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值