C++ 读取txt文件,按行读取,每行按照空格分隔

C++ 读取txt文件,按行读取,每行按照空格分隔

文件长这样

0.0123316 0.375353 0.10401
-0.00151841 0.463505 0.120007
-0.00279071 0.48558 0.133968
-0.00876399 0.449192 0.119612
-0.0151656 0.381921 0.0963358
-0.0171188 0.324608 0.0580801
-0.0161262 0.188523 0.0251649
-0.0103069 -0.110366 -0.0516647
-0.0117365 -0.435222 -0.129303
0.00678631 -0.661168 -0.164249
0.00322251 -0.762689 -0.186981
 

代码如下:

读取速度文件,把速度赋值到 Eigen::Vector3f,并保存到vector中:

//读取文件
ifstream file;
stringstream ss;
vector<Eigen::Vector3f> velocity;
Eigen::Vector3f vec_tmp;
file.open("velocity.txt", ios::in);
if (!file.is_open())
{
    cout << "read file failed" << endl;
    return;
}
string line;   
while(getline(file, line)){
    ss.str(line);
    string single;
    int i = 0;
    // 按照空格分隔
    while(getline(ss, single, ' ')){
        vec_tmp(i++) = atof(single.c_str());
    }
    ss.clear(); //必须加,不然写不到string里。
    velocity.push_back(vec_tmp);
}

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值