C++中文件(file)、字符串(string)和向量(vector)相互间的赋值和读取数据操作

(1).文件往向量中写入(以整型变量为中介):

#include<iostream>
#include<fstream>
#include<vector>
using namespace std;

int main(){
    ifstream in("d://aaa.txt");  //需要包含#include<fstream>
    vector<int> s;               //需要包含#include<vector>
    for(int a;in>>a; )
    {
        s.push_back(a);
    }
    for(int i=0;i<s.size();++i)
        cout<<s[i]<<" ";    //需要包含#include<iostream>
}

(2).文件往string写入,及string往整型变量写入

#include<iostream>
#include<fstream>
#include<sstream>  //提供getline()和istringstream()
#include<vector>

using namespace std;

int main(){
    vector<int> b;
    ifstream in("d://aaa.txt");    //ifstream即输入文件流(input file stream),用于从文件读数据(从文件读入)
    for(string s;getline(in,s); )  //按每次一行的方式从文件读数据到字符串s中
    {   
        istringstream sin(s);      //istringstream即输入字符串流,从字符串读入
        for(int ia;sin>>ia; )      //从字符串每次读一个数据到整型数ia中
        {
            b.push_back(ia);       //每次将一个字符读入到向量中 
        }    
    }
    for(int i=0;i<b.size();++i)
        cout<<b[i]<<" ";

}

这里写图片描述

另:输出向量的数据除了上述的下标方式,是和数组一样的方法;还有另一种方法:

for(vector<int>::iterator it=a.begin();it!=a.end();++it)
    cout<<*it<<" ";
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值