Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как создать большой файл


Страницы:   1 2

texx ©   (2009-05-29 11:11:00) 

Здравствуйте!
Требуется очень быстро программно создавать файл любого размера (вплоть до гигабайтов), на NTFS диске (если можно и на FAT - хорошо, но и NTFS достаточно). Т.е. в программе спрашивается имя и путь файла, размер - и он создается практически мгновенно, независимо от размера (если позволяет свободное пространство). Содержание файла - абсолютно любое (мусор, нули, содержание других файлов - не важно). Сначала я думал сделать это, заполняя файл посимвольно, но большие файлы создаются очень долго.. Может быть, я не очень понимаю принципы и структуру хранения данных, но кажется на секторах свободного участка диска хранятся же данные от прошлых файлов, может быть, как-то к ним обозначить как раз этот новый файл, задав в таблице разделов от куда он будет начинаться и заканичаться, или еще как-то..

Вобщем, вкратце - необходимо создание файла огромного размера очень быстро, с любыми байтами внтури. Подскажите пожалуйста, как это реализовать, не спрашивая зачем это мне :) ?


texx   (2009-06-02 08:12:00) [1]

Судя по количеству ответов, вопрос я поднял интересный ;)
Кто-нибудь все-таки поможет с генератором файлов? :)


texx   (2009-06-02 08:09:00) [2]

Удалено модератором


brother   (2009-06-02 07:55:00) [3]

у тебя цель: обман, у нас это не приветствуется. Если не можешь сообразить сам - не программируй.
зы я не буду говорить свое мнение о тебе, ты в курсе да?


texx   (2009-06-02 07:50:00) [4]

Удалено модератором


brother   (2009-06-02 07:31:00) [5]

> Канделябром давно не получал ?

вот и я о том же!


Медвежонок Пятачок   (2009-06-01 18:36:00) [6]

в правилах озвучена обязательная шара с размером 30 гигов.
я ее сделал, потеряв мегабайт дискового пространства.
просто в той шаре только нолики и лежат они в сжатой папке нтфс


sniknik   (2009-06-01 17:26:00) [7]

> заветные 90Кб
т.е. ты их всетаки получил, а из-за того, что не захотел расшаривать свое, кто то не получил свои "заветные 5Кб"/10/20 и т.д. и ищет до сих пор.

> шарить для этого 30 честных гигов интересного публике контента?
да, если в правилах того трекера с которого хочешь это прописано.
не хочешь следовать таким правилам ищи альтернативу, не пользуйся торентом, на крайний случай обойдись без искомого файла. тут же вместо попытка обмануть правила, желание взять на халяву ничего не давая взамен.
а трекеры так устроены, что если никто не будет отдавать то неоткого будет качать. т.что жлобство тут очень даже причем.


Медвежонок Пятачок   (2009-06-01 16:06:00) [8]

да причем здесь жлобство.
например сегодня искал dtemp.exe.
сайт автора молчит, остальные дают скачать, но спрашивают у меня всякую фигню.
захожу на dc.озерки и через минуту у меня есть те заветные 90Кб

шарить для этого 30 честных гигов интересного публике контента?


sniknik   (2009-06-01 15:14:00) [9]

> я вообще не понимаю, зачем пиринговой сети мусорный файл в 20 гигов?
сети незачем, но такие файлы пригодятся деятелям которые хотят качать ничего не отдавая взамен... есть локальные сети у которых пока не расшариш определенное количество качать не дают, а при большом количестве у тебя еще и приоритет.
один знакомый с работы в такой "состоит" и все возмущается гадам которые в расшарку весь диск с: с виндой и программ файлами ставят... объем бывает большой но полезного 0. этот видать даже на эти бессмысленные файлы жлобится... хочет вообще мусором "откупиться".


Игорь Шевченко   (2009-06-01 14:52:00) [10]


> расшаривать в файлообменных сетях, где требуется шара какого-
> нибудь размера


Канделябром давно не получал ?


Медвежонок Пятачок   (2009-06-01 14:08:00) [11]

я вообще не понимаю, зачем пиринговой сети мусорный файл в 20 гигов?

А чтобы тупо пустило на хаб.


Anatoly Podgoretsky   (2009-06-01 06:51:00) [12]

По принципу работы, иногда она долгая, поэтому надо зафиксировать размер, что бы не было так больно в конце.


brother   (2009-06-01 05:41:00) [13]

> Но пиринговый-то клиент  хешировать его будет по чесному.
> Все 30 гигабайт и далеко не мгновенно

я вообще не понимаю, зачем пиринговой сети мусорныйфайл в 20 гигов?


texx   (2009-06-01 05:30:00) [14]

To clickmaker ©   (29.05.09 12:36) [3] - Спасибо большое!

oldman ©   (30.05.09 18:38) [4] - че ты 'мдя', вообще-то, для новичков форум. Мгновенно - преувеличение, имелось ввиду относительно быстро.

Anatoly Podgoretsky ©   (31.05.09 09:52) [7] - Понимаю :)))) Да я рассказал все подробно, мне не жалко :)


Anatoly Podgoretsky   (2009-05-31 09:52:00) [15]


> Подскажите пожалуйста, как это реализовать, не спрашивая
> зачем это мне :) ?

А вот это зря, можем и морду набить и не спрашивай зачем это надо.


Anatoly Podgoretsky   (2009-05-31 09:50:00) [16]

> Медвежонок Пятачок  (30.05.2009 20:34:05)  [5]

Ну и что. Зачем же еще тратить время на заполнение? Когда он и так будет переписан полностью.


Медвежонок Пятачок   (2009-05-30 20:34:00) [17]

Вобщем, вкратце - необходимо создание файла огромного размера очень быстро, с любыми байтами внтури. Подскажите пожалуйста, как это реализовать, не спрашивая зачем это мне :) ?

Ну создашь ты его скажем за секунду в компрессированной папке ntfs.
Файл будет допустим 30 гигов, а на диске займет 30 килобайт.

Но пиринговый-то клиент  хешировать его будет по чесному.
Все 30 гигабайт и далеко не мгновенно


oldman   (2009-05-30 18:38:00) [18]


> в программе спрашивается имя и путь файла, размер - и он
> создается практически мгновенно


Мдя...


clickmaker   (2009-05-29 12:36:00) [19]

> как его заполнить 20 гигами байтов и какими проще?

CreateFile
SetFilePointer
SetEndOfFile
CreateFileMapping с флагом PAGE_READWRITE
MapViewOfFile с флагом FILE_MAP_WRITE вернет указатель на буфер, который можно забивать случайным образом
потом закрываем - UnmapViewOfFile, CloseHandle, CloseHandle


texx   (2009-05-29 12:22:00) [20]

Например, расшаривать в файлообменных сетях, где требуется шара какого-нибудь размера, а под рукой больше ничего нет - голый комп ^_^ Также, для экспериментов с файлами в дельфи (при изучении оного).. Ну мб еще для чего пригодится..

А что, с помощью указанного выше, можно быстро создать скажем файл 20 гб? :) Вот есть путь - 'c:\123.txt', есть желаемый размер - 20Gb... как его заполнить 20 гигами байтов и какими проще? Можно кусочек кода, пример?


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо