用c++按行读取txt文件,其中数据用逗号分割,并且不读取第一行数据
时间: 2024-01-21 12:16:11 浏览: 102
可以使用`fstream`库中的`getline()`函数按行读取txt文件,再使用`stringstream`库中的`getline()`和`stringstream`函数将每行数据按逗号分割。
以下是一个示例代码:
```c++
#include <iostream>
#include <fstream>
#include <sstream>
#include <vector>
using namespace std;
int main() {
ifstream file("data.txt");
string line;
vector<vector<string>> data;
// skip first line
getline(file, line);
while (getline(file, line)) {
stringstream ss(line);
vector<string> row;
string cell;
while (getline(ss, cell, ',')) {
row.push_back(cell);
}
data.push_back(row);
}
// print data
for (vector<string> row : data) {
for (string cell : row) {
cout << cell << " ";
}
cout << endl;
}
return 0;
}
```
其中,`data.txt`是一个包含数据的txt文件,每行数据用逗号分割。程序首先跳过第一行数据,然后按行读取文件并将每行数据按逗号分割成一个字符串向量,并将这些向量存储在一个二维字符串向量`data`中。最后程序打印出`data`中的所有数据。
阅读全文