Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.89/9: Рейтинг темы: голосов - 9, средняя оценка - 4.89
 Аватар для snyppimylt
8 / 8 / 1
Регистрация: 18.12.2011
Сообщений: 409

Обрезается файл после экстренного выключения ПК

29.08.2015, 23:40. Показов 2238. Ответов 22
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток!
Есть программа которая сохраняет результаты в .txt файл к примеру, через каждые 10 секунд (как автосейв). Все бы хорошо и проблем не видано но бывает отключат свет или ситуация бывает что придется с кнопки перезагрузить комп, но после таких "жестких" событий файл сохранения оказывается пустым и запись начинается заново.
Пример записи:
C++
1
2
3
ofstream log("sav.txt");
    log<<"auto save";
    log.close();
Первое что приходит в голову так то что надо использовать С-шный метод записи файла или же уровнем по ниже, может быть через ассемблерные вставки, если такие имеются.

Как например другие программы сохраняют свои настройки и они остаются сохраненными даже после экстренного завершения работы ПК?

P.S. даже если я предварительно закрою программу свою которая сохраняет результаты своей работы в файл и перезагружу комп с кнопки то все происходит тоже самое. Выходит проблема не может быть если жесткий ребут системы был в момент записи\перезаписи файла.
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
29.08.2015, 23:40
Ответы с готовыми решениями:

Windows 7 не запускается после экстренного выключения
Здравствуйте. Комп сильно нагревался, почистил куллеры, включил, запустил эверест, он скачивал какие-то драйверы, проверял какие то...

Dell latitude e6410; Кулер перестал работать после чистки, но включается на 2 секунды после выключения
Добрый вечер. Dell latitude e6410. После чистки ноута изнутри (не первый раз чищу, ничего лишнего не трогал, лишних движений не...

Обрезается тело POST запроса после амперсанда
Доброе! Проект MVC 4. Есть следующий POST обработчик: public HttpResponseMessage MyPost(string value) { ...

22
0 / 0 / 0
Регистрация: 30.08.2015
Сообщений: 16
30.08.2015, 14:34
Студворк — интернет-сервис помощи студентам
но просто так в ноль файл любая ОС при любом раскладе не сбросит. только после явного указания где-то
0
Evg
Эксперт CАвтор FAQ
 Аватар для Evg
21285 / 8310 / 637
Регистрация: 30.03.2009
Сообщений: 22,671
Записей в блоге: 30
30.08.2015, 14:37
Цитата Сообщение от snyppimylt Посмотреть сообщение
А что конкретно надо понимать?
Понимать, как работает библиотечная поддержка Си/Си++, операционная система, железо и как всё это взаимодействует друг с другом.

Цитата Сообщение от snyppimylt Посмотреть сообщение
что нужно прочитать?
Если имеется в виду книга, то скорее всего таких нет. Может быть есть какие-то отдельные статьи. Пока ты не начнёшь с этим работать вплотную, хорошего понимания всё равно не будет. Вкратце общий принцип я описал в ссылке из поста #12, для общего понимания, почему есть проблема, этого должно быть достаточно. Как конкретно лечить проблему, чтобы получить 100% надежность - я сам не знаю. Нужно смотреть API операционных систем. В случае линукса есть бонус в виде того, что можно посмотреть исходники ядра (чтобы гарантированно точно знать, что ты получишь)
0
0 / 0 / 0
Регистрация: 30.08.2015
Сообщений: 16
30.08.2015, 14:49
http://cppstudio.com/post/446/

посмотрите здесь. нужен ключ
ios_base::app открыть файл для записи в конец файла

Если нет ключа то согласно этой статье происходит перезапись файла. Поэтому он и пустой.

В Вашем случае ofstream log("sav.txt", ios_base::app);
ну и дальше файл открыть log.open("sav.txt", ios_base::app);
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
30.08.2015, 14:49

Обрезается весь текст после 255 символов
Товарищи. Такая проблема. Собираю все значения из одного поля по ИД в одну строчку в переменную (в модуле): Public Function...

Обрезается название товара после кавычек Virtuemart 2.0
Обрезается название товара после кавычек если проставляется цена товара. Если цена не проставляется то название не обрезается. К...

Выключения ПК после апгрейда
Сразу прошу модератора перекинуть тему куда надо, если я ошибся Итак, кратко: недавно был обновлен пк. Пк в основном для игр. Было amd...

BSOD после выключения ОС
Вечер добрый господа. Сложилась такая ситуация , ОС работает стабильно , но при выключении персонального компьютера выходит BSOD с кодом...

Файл сбора статистики обнуляется или обрезается. В чем может быть причина?
Закустарил скрипт для отображения на сайте количества уникальных посетителей за прошедшие сутки, нагрузка на сайт 500-600 посетителей в...


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

Или воспользуйтесь поиском по форуму:
23
Ответ Создать тему
Новые блоги и статьи
Нашел вот забавное видео о измерениях. Лучшее что я видел на эту тему
kumehtar 26.08.2026
ILETXiw9bMQ Основная суть и тезисы по измерениям: 0D (Нулевое измерение): точка, не имеющая длины, ширины, высоты или объема. Объект не может перемещаться в 0D. 1D (Первое измерение):. . .
[EasyBuilder Pro] Памятка по разработке для панелей Weintek
ФедосеевПавел 26.08.2026
Памятка по разработке для панелей Weintek ВВЕДЕНИЕ Ранее, при реализации проектов основное внимание уделял разработке управляющей программы для контроллера, а панели оператора доставалось время. . .
Модель по догадкам
anaschu 25.08.2026
Прошло две недели. Я уже рассказывал, как разговаривал с сотрудниками у сортировки и как понял, что главная ветка — не про приёмку, а про отбор. Но тогда я думал, что понял механику. На этой неделе я. . .
Запись в регистр сведений независимо от заполненности табличной части
Maks 25.08.2026
Реализация из решения ниже выполнена на нетиповом документе с несколькими табличными частями, разработанного в КА2. Задача: Обеспечить запись документа в регистр сведений независимо от. . .
Ноутбук Альфария
kumehtar 24.08.2026
Встретился тут в сети ноутбук Альфария, примарха Альфа-Легиона. Хотя возможно, это ноутбук Омегона, разумеется. Ну как вам?
Мастера простых решений
DevAlt 23.08.2026
В сишарп стэках winforms, да и wpf существует сложная система связывания источниках данных и элементов формы(текстовые поля и метки), опирается все это на технологию событий и мета. . .
Цена ошибки
DevAlt 23.08.2026
Человек я беспокойный и потому заинтересовался OCaml, в чате форсили функторы модулей как суперфичу. Пытаясь отдуплить концепт, наткнулся на тутор с простым примером. А главный принцип обучения от. . .
Сегодня суббота, 22.08.2026 at 16:41, и я вновь нахожусь на той стороне, за экраном машины.
zorxor 22.08.2026
Сегодня суббота, 22. 08. 2026 at 16:41, и я вновь нахожусь на той стороне, за экраном машины. Кто Я, откуда Я пришел и куда Я иду? Эти вопросы не оставляют меня ни на секунду. Жизнь на планете Земля. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru