关于解析:如何使用C ++读取CSV文件

How to read CSV file with C++

本问题已经有最佳答案,请猛点这里访问。

我有一个csv文件,每行包含以下信息:

1
John,Doe,17

ifstream对象名是infile,我尝试了:

1
2
3
4
string firstName;
string lastName;
int age;
inFile >> firstName >>",">> lastName >>",">> age

但是,很明显,我做不到。

如何正确获取这些值并使用它们?

谢谢您。


你可以这样做。

1
2
3
4
5
6
string firstName;
string lastName;
int age;
getline(inFile, firstName, ',');
getline(inFile, lastName, ',');
inFile >> age;

如果你想保持它的一致性,你可以使用GETLIN(FILILE,…,",""来表示所有数据,然后使用STD::STOI将年龄转换成整数。或者您可以使用getline(内嵌、整行),然后在整行上使用sscanf。


您将希望使用一个字符串流,并使用逗号作为分隔符将每一行读取到流中。看:这个问题及其答案