Форум программистов, компьютерный форум CyberForum.ru

некорректное считывание из файла - C++

Восстановить пароль Регистрация
 
Tiva
94 / 94 / 1
Регистрация: 25.04.2012
Сообщений: 429
24.11.2012, 14:28     некорректное считывание из файла #1
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
ifstream ifst(FNAME_USERLIST);
while(!ifst.eof())
                {
                    string templog;
                    string temppas;
                    int tempacc;
                    
                    ifst >> templog >> temppas >> tempacc;//считываем в временные переменные логин, пароль и уровень при запуске программы
                    //следующие три строчки, заполняют пользовательские данные в поля класса.
                    login.push_back(templog);
                    password.push_back(temppas);
                    access.push_back(tempacc);
 
                    count++;
                }
файл вида:
Код
admin qwert 126
user asdf 14
проблема в том, что если после конца последней строки есть еще одна пустая, то он считывает её, заполняет логин и пароль пустотой и появляетя лишяя запись. как игнорировать это?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.11.2012, 14:28     некорректное считывание из файла
Посмотрите здесь:

Считывание с файла C++
считывание из файла C++
Считывание файла C++
Считывание из файла C++
Некорректное считывание строки C++
C++ Считывание из файла
Считывание из файла C++
Некорректное считывание строки C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
gray_fox
What a waste!
 Аватар для gray_fox
1244 / 1127 / 53
Регистрация: 21.04.2012
Сообщений: 2,350
Завершенные тесты: 3
24.11.2012, 15:28     некорректное считывание из файла #2
Перед push_back
C++
1
2
3
if (!ifst.good()) {
   break;
}
должно помочь.

Добавлено через 5 минут
Между делом, параллельные массивы - не самая лучшая идея. Лучше завести структуру, которая будет представлять одну "запись" и хранить одну коллекцию из этих записей.
Yandex
Объявления
24.11.2012, 15:28     некорректное считывание из файла
Ответ Создать тему
Опции темы

Текущее время: 04:23. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru