这是对我想要实现的目标的一点描述:
我有一个文本文件,我必须从中提取数据。此数据代表有关8人的基本信息,对于每个人,文本文件中使用了6行信息:
例: 第1行:名称,第2行:姓氏,.....第7行:姓名,第8行:姓氏等...
在所有这些信息之后,有更多数据以不同的方式格式化。
数据的第二部分除以字符'$'。
我成功地提取了所有人的数据,但如何更改提取文本文件数据的第二部分的方式?我认为我可以更改我的提取方法,其中的注释是(见代码)
这是我提取第一部分数据的代码:
if (inputFile.is_open()) {
for (int i = 0; i < 8; i++) {
string name, last_name, dob, number, street, city;
getline(inputFile, name);
getline(inputFile, last_name);
getline(inputFile, dob);
getline(inputFile, number);
getline(inputFile, street);
getline(inputFile, city);
Person p = Person(name, last_name, atoi(dob.c_str()));
Address a = Address(atoi(number.c_str()), street, city);
Directory::register(p, a);
}
//Code for 2nd part of data should be here no?
} else {
throw logic_error("File can't be opened");
}
答案 0 :(得分:0)
我设法使用另一个for循环使其工作并忽略每个数据集的字符inputFile.ignore('$', '\n');
感谢大家的帮助