Так что мой text.txt выглядит следующим образом:C++ ошибка чтения файла
208 84 Sally Goodnow 30:23 52 F Lancaster
209 344 Scott Grady 30:28 42 M Clinton
210 191 gail holland 30:36 52 F worcester
211 43 Karen Hughes 30:45 46 F Shirley
212 221 Edward m Powers Jr. 30:48 60 M Clinton
213 173 Lisa Zancewicz 30:49 34 F Clinton
214 186 Julianne Ryll 30:54 51 F Clinton
215 245 Briana Gibson 30:54 27 F Marlborough
мой код, чтобы прочитать файл выглядит следующим образом:
int a;
int b;
string c;
string d;
string e;
string f;
string g;
string h;
string mystr;
int mymin;
int mysec;
int i;
int count=0;
while((infile>>a>>b>>c>>d>>e>>f>>g)&&getline(infile, h))
мой код просто разрывает на линии 212, я думаю, это связано с именем Edward m Powers Jr. (теперь я действительно ненавижу это имя, каждый раз, когда я смотрю на него, lol). Имя использует мои четыре строки, делая h = 60 M Клинтон. Это потому, что строка h не может хранить в ней целое число 60? Я не думаю, что это причина.
Я делаю getline (infile, h), потому что меня не интересует название города, Ланкастер, Клинтон - названия городов.
Я попытался пропустить линию 212, я сделал что-то вроде этого:
string all
while(getline(infile, all)
{
if(all.at[0]!='2'&&all.at[1]!='1'&&all.at[2]!='2')
{
infile>>a>>b>>c>>d>>e>>f>>g;
getline(infile, h);
Я делаю это просто строка 212 пропустить, но это не сработало. Он просто ломается в других строках.