C 快速-CPP-CSV-Parser进入数组
c++ fast-cpp-csv-parser into array
找到了用于CSV解析的LIB https://github.com/ben-strasser/fast-cpp-csv-parser,我正在尝试将数据获取到2D数组中。我的使用情况有问题,因为LIB以特定的方式构建
bool read_row(ColType1&col1, ColType2&col2, ...);
从Github中提出的示例中,我想到了:
main() {
double** data = new double*[5];
for (int i = 0; i < 4; ++i) {
data[i] = new double[5];
}
io::CSVReader<5> in("c:/code/test.txt");
//in.read_header(io::ignore_extra_column, "vendor", "size", "speed");
double a; double b; double c; double d; double e;
int n = 0;
while (in.read_row(a, b, c, d, e)) {
printf("time elapse: %fn", c);
data[n][0] = a;
data[n][1] = b;
data[n][2] = c;
data[n][3] = d;
data[n][4] = e;
n++;
}
for (int i = 0; i < 4; i++){
for (int j = 0; j < 5; j++) {
printf("data %fn", data[i][j]);
}
}
}
这可以完成这项工作,经过4行,带有5列,例如,我必须为每个列提供一个变量。如何修改代码以获取数千列?是否有更好/更轻松地将CSV处理为2D数组的方法?我的目标是速度,我知道CSV输入,数字和列的确切构建,因此不需要检查。
您说输入CSV文件有数千列。您链接的库并不能有效地支持这种用例(毕竟,几乎没有人有千列CSV文件)。
一种简单而快速的方法是一次读取一行(std::getline()
或fgets()
),然后明确地通过逗号分开。
相关文章:
- cpp二进制搜索问题,计算给定数组中输入元素的出现次数
- 如何在cpp.中使用协议缓冲区存储大缓冲区/数组(char/int)
- 不同大小的向量数组的大小 cpp
- 如何循环访问 cpp 中的函数返回的字符指针数组
- 将一维数组写入 CSV C++中的不同列?
- 该程序将.csv文件中的一系列单词放入数组中,然后随机生成句子.但它不起作用
- 为什么我的 cpp 数组大小是 4 的倍数?
- 如何在 llvm 的 cpp api 中使用 CreateInBoundsGEP 来访问数组的元素?
- 错误的值是使用c++从CSV文件数据写入数组
- 如何使用 PHP-CPP 在 PHP 类中添加静态数组
- 为什么我在尝试将数组中的值写入 CSV 文件中时会出现段错误
- cpp 数组 - 分配常量索引有效,而非常量索引不起作用
- 将特定索引处的字符数组内容与字符文字 - cpp 进行比较
- 为什么当我在 CPP 的初始化中指定多维数组时,它必须有边界
- 在 GRPC 中使用字节数组 (cpp)
- C 快速-CPP-CSV-Parser进入数组
- 检查 CHAR 多维数组 CPP 中的值
- 将字符串转换为字节(无符号字符)数组cpp
- CSV 文件转换为带换行符的 2D 数组 CPP
- 读取二维数组在CSV到map++