Я пытаюсь прочитать файл со списком заголовков и авторов, и мне нужно иметь возможность игнорировать символ новой строки, который разделяет каждую строку в файле.
Например, мой файл .txt может иметь следующий список:
Эгоистичный ген
Ричард Докинз
Прекрасный новый мир
Олдос Хаксли
Солнце тоже встает
Эрнест Хемингуэй
Я должен использовать параллельные массивы для хранения этой информации, а затем иметь возможность форматировать данные следующим образом:
Эгоистичный ген (Ричард Докинз)
Я пытался использовать getline для чтения данных, но когда я иду к форматированию заголовка и автора, я получаю это:
Эгоистичный ген
(Ричард Докинз
)
Как игнорировать символ новой строки при чтении списка из файла?
Это то, что я имею до сих пор:
int loadData(string pathname)
{
string bookTitle[100];
string bookAuthor[100];
ifstream inFile;
int count = -1; //count number of books
int i; //for variable
inFile.open(pathname.c_str());
{
for (i = 0; i < 100; i++)
{
if(inFile)
{
getline(inFile, bookTitle[i]);
getline(inFile, bookAuthor[i]);
count++;
}
}
inFile.close();
return count;
}
Я очень ценю любую помощь!
Richard
EDIT:
Это моя функция вывода:
void showall(int count)
{
int j; //access array up until the amount of books
for(j = 0; j < count; j++)
{
cout << bookTitle[j] << " (" << bookAuthor[j] << ")";
cout << endl;
}
}
Я что-то здесь не так делаю?