Я пытаюсь прочитать набор значений из текстового файла в массив структур массивов. Каждая из записей разделена символом «\ n», и каждая запись состоит из 3 значений, разделенных знаком «;».
Проблема в том, что после правильного чтения первой строки данных файла программа считывает первое значение из второй строки, а затем, кажется, не может прочитать остальные значения. Можете ли вы указать на ошибку в моем синтаксисе или логике?
Ниже приведены данные испытаний.
CS162;Finish Lab 2;9/26/2009
CS201;Take Quiz 1;9/28/2009
После считывания тестовых данных вывод моей программы ниже.
Your tasks are:
Finish Lab 2 for CS162 is due 9/26/2009
CS201
for is due
Циклы, которые считывают файл в массив и выводят содержимое массива, приведены ниже. Мой полный код будет в конце вопроса.
for ( ; InputFile.peek() != EOF; ListSize++ )
{
InputFile.get(TaskList[ListSize].Course, BUFFERSIZE, ';');
InputFile.ignore(BUFFERSIZE, ';');
InputFile.get(TaskList[ListSize].Assignment, BUFFERSIZE, ';');
InputFile.ignore(BUFFERSIZE, ';');
InputFile.get(TaskList[ListSize].DueDate, BUFFERSIZE, ';');
InputFile.ignore(BUFFERSIZE, '\n');
}
cout << "Your tasks are:" << endl;
for ( int Iteration = 0; Iteration <= ListSize; Iteration++ )
{
cout << TaskList[Iteration].Assignment << " for " << TaskList[Iteration].Course << " is due " << TaskList[Iteration].DueDate << endl;
}
Полное раскрытие, это для класса информатики. Вот почему я не прошу полного кода решения, просто помочь с ошибками логики или синтаксиса. Если я делаю это совершенно неправильно, пожалуйста, укажите мне документацию, чтобы помочь мне. Но это накладывает ограничения на мой код. Программа должна использовать массивы символов, а не строки.