C++读取csv表格文件到vector
这个CSV文件假设知道每行有多少个数,也知道数据的格式,即可使用下面简单的方法实现。
我们假设每行有4个数据,依次是int,int,float,float
基本思路是:把每行的数据定为一个类型,放在vector中,方便查找使用。使用FILE读文件,fscanf快速把已知格式的数据读进来。
#include <iostream>
#include <fstream>
#include <vector>
#include <string> using namespace std; class csvdata{
public:
int id;
int level;
float price;
float cost;
};//行的类定义 int main()
{
vector<csvdata> incsv;
csvdata intp;
FILE *fp;
fp=fopen("D:\\111.csv","r");//你自己的文件路径
while(){
fscanf(fp,"%d,%d,%f,%f",&intp.id,&intp.level,&intp.price,&intp.cost);
incsv.push_back(intp);
if (feof(fp))break;
}
fclose(fp);
for(int i=;i<incsv.size();i++)
{
cout<<incsv[i].id<<" "<<incsv[i].level<<" "<<incsv[i].price<<" "<<incsv[i].cost<<endl; }//输出显示每行的数据 system("pause");
return ;
}
如果不知道csv每行的个数和格式类型,也可以统一用string来读取,只是比上面方法稍麻烦。
#include <iostream>
#include <fstream>
#include <sstream>
#include <string>
#include <vector> using namespace std; string Trim(string& str)
{
str.erase(,str.find_first_not_of(" \t\r\n")); str.erase(str.find_last_not_of(" \t\r\n") + ); return str;
} int main()
{
ifstream fin("test.csv"); string line;
while (getline(fin, line)) {
//cout << line << endl; istringstream sin(line);
vector<string> fields;
string field;
while (getline(sin, field, ',')) {
fields.push_back(field);
} string name = Trim(fields[]);
string age = Trim(fields[]);
string birthday = Trim(fields[]);
cout << name << "\t" << age << "\t" << birthday << endl;
}
system("pause");
return 0;
}
C++读取csv表格文件到vector的更多相关文章
- python读取Excel表格文件
python读取Excel表格文件,例如获取这个文件的数据 python读取Excel表格文件,需要如下步骤: 1.安装Excel读取数据的库-----xlrd 直接pip install xlrd安 ...
- 【 D3.js 进阶系列 — 1.0 】 CSV 表格文件的读取
在入门系列的教程中.我们经常使用 d3.json() 函数来读取 json 格式的文件.json 格式非常强大.但对于普通用户可能不太适合,普通用户更喜欢的是用 Microsoft Excel 或 O ...
- PHP处理CSV表格文件的常用操作方法是怎么样呢
php来说,fgetcsv读入csv表格,返回一个数组,然后foreach输出成HTML的<table>,这步操作几行代码就能实现,非常简单.工作量主要还在于浏览器前端,建议你用jQuer ...
- PHP读取CSV大文件导入数据库的示例
对于数百万条数据量的CSV文件,文件大小可能达到数百M,如果简单读取的话很可能出现超时或者卡死的现象. 为了成功将CSV文件里的数据导入数据库,分批处理是非常必要的. 下面这个函数是读取CSV文件中指 ...
- PHP快速按行读取CSV大文件的封装类分享(也适用于其它超大文本文件)
CSV大文件的读取已经在前面讲述过了(PHP按行读取.处理较大CSV文件的代码实例),但是如何快速完整的操作大文件仍然还存在一些问题. 1.如何快速获取CSV大文件的总行数? 办法一:直接获取文件内容 ...
- pyhton读取 excel表格文件
2019的第一天,忘记昨日之事,迎接新的明天. excel表格文件办公中常用,如通过Python操作这些数据需导入并有序读取这些数据 特随笔,供以后查阅 代码如下: import xlrd # fil ...
- Pandas——读取csv,txt文件
""" 读取csv文件 该文本中的分割符既有空格又有制表符(‘/t’),sep参数用‘/s+’,可以匹配任何空格. """ import p ...
- 通过文件路径读取CSV表格内的数据
ReadDataFromCSV.h UCLASS() class MYPROJECT_API UReadDataFromCSV : public UBlueprintFunctionLibrary { ...
- C#读取csv格式文件
方法1:用一个System.Web.UI.HtmlControls.HtmlInputFile去handle文件选取 以下是button click event中的code,用来执行当文件选取了之后读 ...
随机推荐
- docker~windows版本的安装与使用
回到目录 在面向服务的框架里,docker扮演着十分重要的角色,他使你的部署更轻量,使运维更智能化,事实上微软自己的项目也已经用上了docker了,下面介绍一下在windows环境上使用docker的 ...
- 事件冒泡、事件委托、jQuery元素节点操作、滚轮事件与函数节流
一.事件冒泡定义 事件冒泡是指在一个对象触发某类事件(比如单击onclick事件),如果此对象定义了此事件的处理程序,那么此事件就会调用这个处理程序,如果没有定义此事件处理程序或者事件返回true,那 ...
- [bzoj1805][SCOI2005]骑士精神 [启发式搜索]
Description 在一个5×5的棋盘上有12个白色的骑士和12个黑色的骑士, 且有一个空位.在任何时候一个骑士都能按照骑士的走法(它可以走到和它横坐标相差为1,纵坐标相差为2或者横坐标相差为2, ...
- SQL Server系列之SQL Server 2016 中文企业版详细安装步骤(超多图)
1. 下载地址 下载地址 :https://www.microsoft.com/en-us/server-cloud/products/sql-server-2016/ 官方技术文档:https:// ...
- 回味Python2.7——笔记1
一.基本知识 1.一个值可以同时赋给几个变量: >>> x = y = z = 0 # Zero x, y and z >>> x 0 >>> y ...
- tensorflow tanh应用
1.tanh()函数 tanh是双曲函数中的一个,tanh()为双曲正切. 双曲正切函数的导数公式: 2.tensorflow tanh()例子 import tensorflow as tf i ...
- 【PHP】数组用法(转)
摘要: 说明数组遍历方法foreach,while,for,推荐使用foreach(PHP内部实现,简单速度最快,还可以遍历类属性).以及一些常用方法current,prev,next,end,key ...
- 【ECHART】实例
1. 带timeline datazoom的例子 <!doctype html> <html> <head> <meta http-equiv=" ...
- 关于vue组件的一个小结
用vue进行开发到目前为止也有将近一年的时间了,在项目技术选型的时候隔壁组选 react的时候我们坚持使用vue作为前端的开发框架.虽然两者思想上的差异不大,但是vue的语法在代码的可读性以及后期的维 ...
- Swift4 Json
swift4 带来了原生的json解析,它们分别是 JSONDecoder和JSONEncoder,使用起来还算方便,不过为了更方便,我把它们又进行了简单的封装: class JsonHelper { ...