41 / 37 / 8
Регистрация: 24.07.2013
Сообщений: 219
|
|||||||||||
1 | |||||||||||
C++ файлы ifstream/ofstream24.07.2013, 16:33. Показов 4705. Ответов 20
Метки нет (Все метки)
Доброе время суток нужна небольшая помощь с записью/считыванием из файла вообщем при считывание из файла eof() не определяет конца файла и пытается считать следующий элемент понимает что там ничего нету и выдает ошибку это я так понимаю данную ситуацию ! Смотрим пример: пример имеет 100% сходство с ситуацией просто в нем меньше не сущевственного мусора:
lol.h
main.cpp
0
|
24.07.2013, 16:33 | |
Ответы с готовыми решениями:
20
C++ файлы ifstream/ofstream запись класса ifstream ofstream Перегрузка ifstream и ofstream? ifstream/ofstream/fstream |
41 / 37 / 8
Регистрация: 24.07.2013
Сообщений: 219
|
|
24.07.2013, 16:42 [ТС] | 3 |
в while(!f1.eof) опечатался проблема не в этом ))
Добавлено через 1 минуту при проверке while(!f1.eof()) ходил отладчиком . Все записаное уже считано однако eof возвращяет 0 а не 1-н и заходит еше раз в цикл в и выдает ошибку
0
|
73 / 73 / 18
Регистрация: 29.11.2011
Сообщений: 356
|
|
24.07.2013, 16:46 | 4 |
Оформи код нормально, я вообще не могу найти в твоём коде где у тебя там "while(!f1.eof())"
0
|
41 / 37 / 8
Регистрация: 24.07.2013
Сообщений: 219
|
|
24.07.2013, 16:47 [ТС] | 5 |
0
|
73 / 73 / 18
Регистрация: 29.11.2011
Сообщений: 356
|
||||||
24.07.2013, 16:50 | 6 | |||||
Добавлено через 1 минуту чтобы у тебя сработал eof(), нада чтобы конец фала был достигнут, у тебя же он никогда не достигнется, так как из фала ты не читаешь ничего.
0
|
41 / 37 / 8
Регистрация: 24.07.2013
Сообщений: 219
|
|||||||||||
24.07.2013, 16:52 [ТС] | 7 | ||||||||||
извеняюсь за мусорку вот мейн отдельно с исправлениемм
0
|
73 / 73 / 18
Регистрация: 29.11.2011
Сообщений: 356
|
|||||||||||
24.07.2013, 16:54 | 8 | ||||||||||
Да, затупил немнога, не заметил
0
|
73 / 73 / 18
Регистрация: 29.11.2011
Сообщений: 356
|
|
24.07.2013, 17:00 | 10 |
void
0
|
41 / 37 / 8
Регистрация: 24.07.2013
Сообщений: 219
|
|
24.07.2013, 17:10 [ТС] | 11 |
вообщем испробовал много разного но пока ничего не помогло
0
|
5498 / 4893 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
|
|||||||||||
24.07.2013, 17:10 | 12 | ||||||||||
С выделением памяти не разбирался, но если так сделать, то будет нормально читать из файла:
1
|
41 / 37 / 8
Регистрация: 24.07.2013
Сообщений: 219
|
|
24.07.2013, 17:17 [ТС] | 13 |
спс за помощь )) проблема решина хоть и не коректно
0
|
41 / 37 / 8
Регистрация: 24.07.2013
Сообщений: 219
|
|
24.07.2013, 17:26 [ТС] | 15 |
в том что мною была допущена гдето ошибка изза которой и появился этот глюк и такое ее решение впринципе подходит но гораздо лудши было бы найти где я ошибся ))) но с этим я уже справлюсь главное что на данном этапе работает ) еше раз благодарю за помощь )
0
|
5498 / 4893 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
|
|
24.07.2013, 17:32 | 16 |
Код у вас странный (или это для примера?). Записываете в файл одну структуру, а читаете оттуда, зачем-то, в цикле.
Добавлено через 1 минуту Цикл нужен, если в массив читать. Добавлено через 2 минуты Тут главное то, что проверку на eof() всегда нужно делать в прегруженном операторе (там более, если вы в нём память выделяете), иначе будут проблемы. Добавлено через 1 минуту Когда читаете структуры из файл, можно и без проверки на eof() обойтись. Сначала считаете количество структур в файле, потом читаете это количество в for().
0
|
41 / 37 / 8
Регистрация: 24.07.2013
Сообщений: 219
|
|
24.07.2013, 17:35 [ТС] | 17 |
Тут главное то, что проверку на eof() всегда нужно делать в прегруженном операторе (там более, если вы в нём память выделяете), иначе будут проблемы.
оО если честно я изучаю С++ и не знал этого факта спс за подсказку . А по поводу цикла )) это только пример в реальной задачи в них есть необходимость ) и все это записывается из файла в вектор
0
|
41 / 37 / 8
Регистрация: 24.07.2013
Сообщений: 219
|
|
24.07.2013, 18:49 [ТС] | 19 |
Если честно со string еше не работал ) string относится к stl я верно понимаю? сейчас буду со string разбиратся ) ужас как я прогнал это ведь прийдется все заменить на string теперь ))
0
|
5498 / 4893 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
|
|
24.07.2013, 18:55 | 20 |
0
|
24.07.2013, 18:55 | |
Помогаю со студенческими работами здесь
20
Работаем с потоками на C++ ofstream и ifstream Работа с потоками ofstream/ifstream ifstream, ofstream и объекты класса class/string/ifstream/ofstream Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |