Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / C++ [игнор отключен] [закрыт для гостей] / SetFileSize? / 11 сообщений из 11, страница 1 из 1
10.06.2005, 13:48
    #33111897
Ой Вэй
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SetFileSize?
Когда я программно создаю и записываю по кусочкам файл, он оказывается очень фрагментированным.

Я примерно знаю будущий размер этого файла, а процесс записи планирую закончить в кратчайшие сроки.

Есть ли возможность при создании файла запросить свободное место на диске?
(сравните с оператором new)
...
Рейтинг: 0 / 0
10.06.2005, 14:03
    #33111953
Землекоп
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SetFileSize?
#include <io.h>

int _chsize( int handle, long size );
...
Рейтинг: 0 / 0
10.06.2005, 14:09
    #33111969
Ой Вэй
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SetFileSize?
Спасибо, буду пробовать.
...
Рейтинг: 0 / 0
10.06.2005, 14:35
    #33112058
Tracer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SetFileSize?
Имхо лучше memory mapped файлы

CreateFileMapping и.т.д
...
Рейтинг: 0 / 0
10.06.2005, 15:40
    #33112232
Ой Вэй
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SetFileSize?
2 Tracer
Звучит красиво, но я первый раз про это слышу, увы. Пока не понял, например, как это будет работать с несуществующим файлом и потянет ли CArchive работать с таким "файлом". А переписывать большой кусок программы не хочется.
...
Рейтинг: 0 / 0
10.06.2005, 16:09
    #33112326
Ой Вэй
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SetFileSize?
Выяснил экспериментально, что задание размера файла заранее не препятствует его фрагментации :(
...
Рейтинг: 0 / 0
10.06.2005, 16:23
    #33112362
Кодер
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SetFileSize?
Ой ВэйВыяснил экспериментально, что задание размера файла заранее не препятствует его фрагментации :(

Если диск сильно фрагментирован, то это не поможет. Еще нужно, что бы программа писала в файл не изменяя его размер, после создания, тогда можно избежать фрагментации.
...
Рейтинг: 0 / 0
10.06.2005, 16:55
    #33112449
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SetFileSize?
Файл-то закрывал ?
...
Рейтинг: 0 / 0
10.06.2005, 17:43
    #33112582
Ой Вэй
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SetFileSize?
2 MasterZiv
Файл-то закрывал ?
Сразу после задания размера или вообще? Вообще конечно да, а сразу после задания размера -- зачем?
Провёл эксперимент, в обоих случаях одинаковое количество фрагментов...

2 Кодер
Если диск сильно фрагментирован, то это не поможет.
Не сильно. И куски интересующего меня размера есть (размер, кстати, небольшой, в пределах метра как правило).
Еще нужно, чтобы программа писала в файл не изменяя его размер, после создания, тогда можно избежать фрагментации.
Я примерно так это и планировал, оказалось -- фиг. Создаю файл, задаю размер, закрываю файл (вообще ничего не пишу). Фрагментов всё равно много.
...
Рейтинг: 0 / 0
10.06.2005, 17:47
    #33112590
Сергей Ильич
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SetFileSize?
В общем-то это личное дело операционной системы - как она намеревается файл фрагментировать, и прикладника такие вещи волновать не должны.
...
Рейтинг: 0 / 0
10.06.2005, 18:21
    #33112680
Кодер
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SetFileSize?
Ой ВэйЯ примерно так это и планировал, оказалось -- фиг. Создаю файл, задаю размер, закрываю файл (вообще ничего не пишу). Фрагментов всё равно много.

Дефрагментируй диск для начала.
...
Рейтинг: 0 / 0
Форумы / C++ [игнор отключен] [закрыт для гостей] / SetFileSize? / 11 сообщений из 11, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]