读取csv文件c++
时间: 2023-08-14 18:07:14 浏览: 170
CSV文件读取类C++源代码
读取CSV文件的C++代码可以使用ifstream和stringstream来实现。以下是一个读取CSV文件并将其存储为字符串数组的示例代码:
```cpp
#include <iostream>
#include <string>
#include <vector>
#include <fstream>
#include <sstream>
using namespace std;
int main() {
ifstream inFile("D:\\aa\\bb.csv");
string lineStr;
vector<vector<string>> strArray;
while (getline(inFile, lineStr)) {
cout << lineStr << endl;
stringstream ss(lineStr);
string str;
vector<string> lineArray;
while (getline(ss, str, ',')){
lineArray.push_back(str);
}
strArray.push_back(lineArray);
}
}
```
这段代码首先使用ifstream打开了一个名为"D:\\aa\\bb.csv"的CSV文件,并使用getline逐行读取文件内容。然后,使用stringstream将每行内容按逗号分割为多个字符串,并将这些字符串推入到vector中,最后将每一行的vector推入到一个二维vector中。
如果您需要将数据转换为其他类型,比如将字符串转换为浮点数,可以参考下面的示例代码:
```cpp
#include <iostream>
#include <string>
#include <vector>
#include <fstream>
#include <sstream>
using namespace std;
int main() {
ifstream inFile("D:\\LaneChangeDecision\\lc_data\\train_data_v0719.csv");
string lineStr;
vector<vector<float>> strArray;
while (getline(inFile, lineStr)) {
stringstream ss(lineStr);
string str;
vector<float> lineArray;
while (getline(ss, str, ',')){
float str_float;
istringstream istr(str);
istr >> str_float;
lineArray.push_back(str_float);
}
strArray.push_back(lineArray);
}
}
```
在这段代码中,我们首先定义了一个vector<vector<float>>来存储浮点数数据。然后,使用istringstream将每个字符串转换为浮点数,并将其推入到lineArray中,最后将每一行的lineArray推入到strArray中。
请注意,以上代码只是演示了如何读取和转换CSV文件中的数据,您需要根据自己的具体需求进行相应的修改。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *3* [C++ 读取csv文件(复制即可用)](https://blog.csdn.net/qq_39332551/article/details/125931529)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"]
- *2* [C++读写CSV文件](https://blog.csdn.net/weixin_43531632/article/details/122281033)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
阅读全文