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

Уверенное создание файла - C++

Восстановить пароль Регистрация
 
Vtulhu
369 / 375 / 96
Регистрация: 12.08.2011
Сообщений: 1,610
10.12.2012, 13:57     Уверенное создание файла #1
Допустим, я создаю файл и сразу же проверяю его наличие. Возможна ли ситуация, когда файл не успеет записаться? Если же такой казус возможен хотя бы чисто гипотетически, то как его гарантированно избежать?

C++
1
2
3
4
5
6
7
8
9
10
11
#include <windows.h>
const char* fname = "c:\\work\\test.txt";
FILE *file;
char* line = "Test 0\n";
for (int i=0; i<10; ++i) {
file = fopen(fname, "w");
fputs(line, file);
++(line[5]);
fclose(file);
do {;} while ( ::GetFileAttributesA(fname) == DWORD(-1) );
}
Смысл программы в том, что она пишет файл и ждёт, когда некая внешняя сила (пользователь, другая прога) его сотрёт. Прогу не проверял, честно говоря, потому что она носит чисто демонстрационный характер. Мне важно знать, нужно ли что-то делать между fclose и циклом do-while? Если дисковые операции строго последовательны, то ответ однозначно - нет. Но я в этом не уверен, Windows же многозадачная система. Или она достаточно разумна?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.12.2012, 13:57     Уверенное создание файла
Посмотрите здесь:

создание H-файла C++
Создание файла C++
C++ Создание файла
создание файла C++
создание файла C++
C++ Создание файла
C++ Создание файла
Создать программу, реализующую: создание файла, просмотр файла, поиск по файлу, выход C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

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