在C++中将CSV文件读入矢量,可以通过以下步骤实现:
#include <iostream>
#include <fstream>
#include <sstream>
#include <vector>
#include <string>
std::vector<std::vector<std::string>> readCSV(const std::string& filename) {
std::vector<std::vector<std::string>> data;
std::ifstream file(filename);
std::string line;
while (std::getline(file, line)) {
std::vector<std::string> row;
std::stringstream ss(line);
std::string cell;
while (std::getline(ss, cell, ',')) {
row.push_back(cell);
}
data.push_back(row);
}
return data;
}
int main() {
std::vector<std::vector<std::string>> data = readCSV("data.csv");
for (const auto& row : data) {
for (const auto& cell : row) {
std::cout << cell << " ";
}
std::cout << std::endl;
}
return 0;
}
这段代码将CSV文件的每一行存储为一个内部矢量,并将所有行存储为外部矢量。然后,可以通过遍历矢量来访问CSV文件中的数据。
这是一个基本的CSV文件读取示例,适用于简单的CSV文件。如果CSV文件包含复杂的数据类型或特殊的格式要求,可能需要进行额外的处理。
领取专属 10元无门槛券
手把手带您无忧上云