![]() |
Ввод\вывод данных в файл
Вложений: 1
Всем доброго времени суток, решил изучить тему классы на начальном уровне,и параллельно ввод вывод данных в\из(файл) .
Суть программы: Ввод данных о студентах и отображение в виде таблицы на консоли,а так же загрузка и сохранение информации в\из файл. Проблемы: Информацию на консоль выводит сразу после ввода,в итоге всё не красиво, не получается сделать всё в виде отдельной таблицы без логов о вводе данных (Это я придумал как сделать=сначала вывод в файл,а потом ввод из файла на консоль полученный результат),но реализовать не получилось.Так же информация которую я ввожу,после вторичного пробега по циклу затирает файл Files.dat и на место него пишет новый,в итоге получается что у меня в файле не вся инфа о студентах а только информация о последнем добавленном. Работаю под Windows 7 на Visual Studio 2010 Код программы: |
Чтоб не затирало файл попробуйте в эту строку fstream out("files.dat"); добавить ios_base:: out|ios_base::app, мне кажется, что файл у вас постоянно новый создается!!
|
Так и есть,создаёться новый,смотрел в логах,атрибуты такие добавлял,но не помогло(
Может есть какой-то другой способ вывода в файл?другая команда похожая...кто подскажет\ Я нашёл ещё "fwrite" в одной из лабораторных чьих-то,но как ей нормально пользоваться так и не понял |
вот попробуй не тоже самое, но очень похоже как раз под твоей темой светится!!!
сразу подскажу смотри функцию void Tkniga::Add() тут конечно не ученики, но очень похоже. Просто используй не fstream (я еще сам толком не разобрался, но ему специально надо указывать, что делать), а пользуй для начала ofstream вывод, ifstream ввод! Удачи. |
к сожалению моя запись и запись через ifstream это тоже самое,просто ifstream это краткая запись.
|
если нужно задержать форматированный вывод, можно использовать временный буфер в памяти stringstream.
Код:
#include <sstream> |
Время: 06:37. |
Время: 06:37.
© OSzone.net 2001-