如何用C ++读取CSV文件

时间:2016-02-25 01:38:22

标签: c++ parsing csv

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

John,Doe,17

ifstream对象名称是inFile,我尝试过:

string firstName;
string lastName;
int age;
inFile >> firstName >> "," >> lastName >> "," >> age

但是,显然,我不能>> "," >>

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

谢谢。

2 个答案:

答案 0 :(得分:1)

你可以这样做。

string firstName;
string lastName;
int age;
getline(inFile, firstName, ',');
getline(inFile, lastName, ',');
inFile >> age;

如果要保持一致,可以对所有数据使用getline(inFile,...,','),然后使用std :: stoi将age转换为整数。或者你可以使用getline(inFile,wholeline),然后在整行使用sscanf。

答案 1 :(得分:0)

您希望使用字符串流并使用逗号作为分隔符将每行读入流中。 请参阅:this question and its answer