CSV文件读取 C++版本

2023-05-16

代码

//创建结构体,把读取数据可以放入结构体成员中
struct WAYPOINT{
    double px;
    double py;
    double pz;
    double vx;
    double vy;
    double vz;
    double ax;
    double ay;
    double az;
};

//读取路径点csv函数
void read_waypoint_csv(std::string CSV_PATH)
{	
	std::ifstream _csvInput;
	_csvInput.open(CSV_PATH);
    if(!_csvInput){
        std::cout<<"open error!  Path = "<< CSV_PATH.c_str() <<std::endl;
        return;
    }
    
    //创建路径点容器
    std::vector<WAYPOINT> waypoint_vec;
    std::string str;
	//读取策略:读取一行数据, 跳过第一行
    size_t line_num = 1;
    //开始循环读取数据
    while(getline(_csvInput, str)){
        WAYPOINT waypt;
        std::istringstream iss(str);
        std::string token;

        if(line_num == 1){
            std::cout << iss.str() << std::endl;
        }else{
            getline(iss, token, ',');
            waypt.px = std::stod(token);
            getline(iss, token, ',');
            waypt.py = std::stod(token);
            getline(iss, token, ',');
            waypt.pz = std::stod(token);

            getline(iss, token, ',');
            waypt.vx = std::stod(token);
            getline(iss, token, ',');
            waypt.vy = std::stod(token);
            getline(iss, token, ',');
            waypt.vz = std::stod(token);

            getline(iss, token, ',');
            waypt.ax = std::stod(token);
            getline(iss, token, ',');
            waypt.ay = std::stod(token);
            getline(iss, token, ',');
            waypt.az = std::stod(token);

            waypoint_vec.emplace_back(waypt);
            printf("%5.3f, %5.3f, %5.3f | %5.3f, %5.3f, %5.3f, | %5.3f, %5.3f, %5.3f\n",
                   waypt.px, waypt.py, waypt.pz,
                   waypt.vx, waypt.vy, waypt.vz,
                   waypt.ax, waypt.ay, waypt.az);
        }
        line_num++;
    }
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

CSV文件读取 C++版本 的相关文章

随机推荐

  • Mysql数据库数据类型详解

    MySQL的数据类型非常多 xff0c 选择正确的数据类型对于获得高性能至关重要 三大原则 xff1a 1 xff0c 更小的通常更好 xff0c 应该尽量使用可以正确存储数据的最小数据类型 2 xff0c 简单就好 xff0c 简单数据类
  • 符姓大全

    符蓉珊 符海瑛 符海英 符海瑛 符何瑛 符小菲 符睿智 符语嫣 符天翔 符天翔 符芮嘉 符文 符程 符自然 符李颜 符海瑛 符虹清 符天恩 符斌 符运波 符浩 符立 符若兮 符司晨 符尔岚 符若萱 符诗嘉 符思嘉 符斯嘉 符颖欣 符诗嘉 符
  • 什么是socket

    什么是网络套接字 xff08 Socket xff09 xff1f Socket是网络上两个程序双向通讯连接的端点 对于一个Socket而言 xff0c 它至少需要3个参数来指定 xff1a 1 xff09 通信的目的地址 xff1b 2
  • Samba服务安装

    Samba服务 xff08 共享文件 xff09 一 xff0c 安装1 apt get install samba2 apt get install samba common3 xff09 apt get install cifs uti
  • Ubuntu14配置nginx虚拟主机

    一 建立项目目录 在 home share 目录下创建一个test项目目录 xff0c 并编辑一个子目录 index php 文件 sudo mkdir p home share test 新建一个主页 index php文件 sudo v
  • 记忆方法

    数字编码联系法 xff1a 就是把数字 翻译 成编程 xff0c 然后用联想的方式把这些编程串连起来 xff0c 这就叫数字编码联系法 这种方法适用于临时记忆一些多位数字或数量不太大 xff0c 又不需长期保持记忆的数字 另外 xff0c
  • PHP 使用 file_get_contents 接收 POST 的資料

    一般接收 POST 资料都是使用 POST 这个变量 xff0c 但 POST 只能取得 Content type 為 application x www form urlencoded 或 multipart form data 的資料
  • 浮点数转成整型intval

    n 61 34 19 99 34 var dump intval n 100 int 1998 var dump strval n 100 string 4 34 1999 34 var dump intval strval n 100 i
  • 《硬件合集》Nvidia NX & Pixracer接线图 &电调调参 BLheliSuite

    Nvidia NX 1 针脚定义 2 电源接口关系图 3 使用技巧 值得一提的是 NX的针脚中ttyTHS0可以用作mavros的通信端口 xff0c 正好的Tx Rx串口通信 只需要交叉接线即可 xff0c 并每次运行时为该端口赋予sud
  • self :: 和 this-> 的用法

    在访问PHP类中的成员变量或方法时 xff0c 如果被引用的变量或者方法被声明成const xff08 定义常量 xff09 或者static xff08 声明静态 xff09 那么就必须使用操作符 反之如果被引用的变量或者方法没有被声明成
  • 程序是怎样运行的

    一 CPU的内部结构解析 1 程序运行流程 程序员用C语言等高级语言编写程序 int a a 61 1 43 2 printf 34 d 34 a 将程序编译后转换成机器语言的EXE文件 01000101000010111 00110100
  • 人性的弱点 --卡耐基

    自序 成就此书的因缘 和人类所具备的潜能相比 xff0c 我们仍处于蒙昧之中 人类的身心只有极小部分得到了发挥 广义而言 xff0c 人类个体远未到达极限 人类囿于自身习惯 xff0c 从未将与生俱来的诸多能力发挥至极致 本书 xff0c
  • git-flow分支模型

    分支模型 xff1a 用 git flow 初始化工程目录完成后 xff0c 只能看到两个分支 xff08 长期分支 xff09 xff1a master 分支 xff1a 用于上线的分支 xff0c 保护性分支 xff0c 只包含经过测试
  • MySQL show关键字用法

    SHOW DATABASES 列出 MySQL Server 上的数据库 SHOW TABLES FROM db name 列出数据库中的表 SHOW TABLE STATUS FROM db name 列出数据库的表信息 xff0c 比较
  • windows10共享文件夹挂载到Ubuntu

    程序开发人员一般都会把开发目录放在windows系统下 xff0c 开发环境却是linux 以前我是linux下文件挂载到windows xff0c 有同事前车之鉴 xff0c 万一虚拟机linux挂壁了 xff0c 很难恢复 现在准备把w
  • 闭包函数中use使用

    匿名函数中的use xff0c 其作用就是从父作用域继承变量 下例是最常见的用法 xff0c 如果不使用use xff0c 函数中将找不到变量 msg 1 2 3 4 5 6 7 8 lt php msg 61 1 2 3 func
  • for update秒杀

    Mysql InnoDB 排他锁 用法 xff1a select for update 例如 xff1a select from goods where id 61 1 for update 排他锁的申请前提 xff1a 没有线程对该结果集
  • UNION 和 UNION ALL

    UNION用的比较多union all是直接连接 xff0c 取到得是所有值 xff0c 记录可能有重复 union 是取唯一值 xff0c 记录没有重复 UNION 和 UNION ALL 的语法都是 xff1a SQL 语句 1 UNI
  • php网站压测(ab)

    一般来说核心页面都需要进行压测 xff0c 特别是秒杀页面 xff0c 从而知道网站的承受能力 xff0c 方便暴露一些问题 xff0c 更好的把控网站 压测工具有很多种 xff0c 最简单 方便的可以使用ApacheBench xff0c
  • CSV文件读取 C++版本

    代码 span class token comment 创建结构体 xff0c 把读取数据可以放入结构体成员中 span span class token keyword struct span span class token class