【发布时间】:2020-08-21 21:01:58
【问题描述】:
我正在尝试将文件行复制到字符串向量中,但没有得到我希望的结果。代码如下:
AmtCatania bus;
ifstream aprifile;
string buffer;
string partenza;
string destinazione;
string data;
string ora_partenza;
string ora_arrivo;
string ritardo;
string tratta;
vector <string> corsa;
aprifile.open("corse.txt");
if(!aprifile.is_open())
{
cerr << "Registro non aperto!" << endl;
return -1;
}
while(getline(aprifile, buffer , '\n'))
{
corsa.push_back(buffer);
aprifile >> partenza >> destinazione >> data >> ora_partenza >> ora_arrivo >> ritardo;
bus.addTratta(tratta);
bus.addPartenza(partenza);
bus.addDest(destinazione);
bus.addData(data);
bus.addOraPart(ora_partenza);
bus.addOraArr(ora_arrivo);
bus.addRit(ritardo);
}
for (string s: corsa){
cout << s << endl;
}
此代码是巴士公司的一类。
这是文本文件
5 //corsa的数量 534 Scuole Borsellino 10/10 16:00 17:00 0 534 Scuole Borsellino 16/10 18:00 19:00 5 534 Scuole Borsellino 16/10 19:00 20:00 3 722 Borsellino Dusmet 19/10 13:30 14:25 10 722 Borsellino Dusmet 19/10 14:30 15:25 10我愿意将每一行复制到一个字符串向量中,但我猜空格正在扼杀这个过程。
////更新/////
while(getline(aprifile, buffer , '\n'))
{
corsa.push_back(buffer);
}
for(string s : corsa)
{
s >> tratta >> partenza >> destinazione >> data >> ora_partenza >> ora_arrivo >> ritardo;
}
s >> tratta >> partenza >> destinazione >> data >> ora_partenza >> ora_arrivo >> ritardo;
给我一个错误,我现在应该如何解析内容?
【问题讨论】:
-
评论不用于扩展讨论;这个对话是moved to chat。