Click here to Skip to main content
15,881,938 members
Articles / Desktop Programming / MFC
Article

Make-A-File - File Creation Utility

Rate me:
Please Sign up or sign in to vote.
4.17/5 (23 votes)
4 Feb 2003Ms-PL2 min read 109.3K   1.7K   23   18
Utility to easily create files for testing purposes. Also supports creating really huge files.

Sample Image - Make-a-File.jpg

Introduction

Often we need test files during development, either to see how an application behaves with differently sized files or just as a "payload" for various tests.

The Make-A-File utility is written just for this purpose - to create files. They can be between 1 byte and 18 Eb (Exabytes, thats about 18.432.000.000.000.000.000 bytes) filled with garbage, random values or zeroes.

Usage

Choose a filename (type or click on the "..." button) and a size. The size is made up by the number in the size field and a unit from the dropdown list. The dropdown list offers Bytes, Kb, Mb, Gb, Tb, Pb and Eb (each being a 1000 times bigger than the previous). The resulting file size in bytes is shown in the field at the bottom.

The checkbox "Random content" fills the file with, who would have guessed this, random bytes. The "Quick Create" checkbox is used to create a file quick and filled with garbage. Technically it uses SetFilePointer() to set the end of the file, which results in nothing being written to the file but allocates the disk space for its contents.

Please see the MSDN for the implications.

By default, the quick create also checks the random content.

If you are using NTFS with file compression enabled, you can easily create a 10 Tb (or even bigger) file on any hard disk if you do not enable the random content or quick create options.

How this works?

Simple, if none of these options is enabled then the program will write a stream of zeroes to the disk which get compressed to literally nothing on the file system. Any file which contains only all the same bytes allocates only one unit for the directory entry.

Information

It is written with MFC under VC6 und is tested under W2k and XP Pro (but should run on any Win32 plattform). The archive contains a release executable and the source code.

License

This article, along with any associated source code and files, is licensed under The Microsoft Public License (Ms-PL)


Written By
Software Developer (Senior)
Portugal Portugal
Software Smith, Blacksmith, Repeat Founder, Austrian, Asgardian.

Comments and Discussions

 
Questionneed to make 5000 files Pin
Member 1207791822-Oct-15 2:38
Member 1207791822-Oct-15 2:38 
I'm not a programmer. I need some guidance using this tool to make 5000 files in a folder. Can someone help me???
SuggestionIprovement : choose number of files to create. Pin
Михайло Ткачук5-Nov-12 10:28
Михайло Ткачук5-Nov-12 10:28 
Generalbugs Pin
Satelit21-Nov-07 0:16
Satelit21-Nov-07 0:16 
GeneralRe: bugs Pin
Andreas Saurwein21-Nov-07 0:43
Andreas Saurwein21-Nov-07 0:43 
GeneralJust what I needed! Pin
Ashtray36027-Aug-07 8:48
Ashtray36027-Aug-07 8:48 
Generaltimer Pin
krathouse18-Apr-07 9:42
krathouse18-Apr-07 9:42 
GeneralGreat for creating files for unit testing a download utility! Pin
Frog's Brain6-Jul-05 7:02
Frog's Brain6-Jul-05 7:02 
GeneralGreat Pin
Florent Geffroy21-Feb-05 22:00
Florent Geffroy21-Feb-05 22:00 
GeneralGreat tool Pin
omegamsx8-Feb-05 1:37
omegamsx8-Feb-05 1:37 
GeneralHandy... Pin
Joel Holdsworth21-Sep-04 3:25
Joel Holdsworth21-Sep-04 3:25 
QuestionIt seems to crash when making a 12-Exabyte file :-( ?? Pin
Nitron5-Feb-03 15:48
Nitron5-Feb-03 15:48 
AnswerRe: It seems to crash when making a 12-Exabyte file :-( ?? Pin
Andreas Saurwein5-Feb-03 23:32
Andreas Saurwein5-Feb-03 23:32 
QuestionWhat's your goal? Pin
Abbas_Riazi5-Feb-03 1:52
professionalAbbas_Riazi5-Feb-03 1:52 
AnswerRe: What's your goal? Pin
Andreas Saurwein5-Feb-03 1:56
Andreas Saurwein5-Feb-03 1:56 
GeneralRe: What's your goal? Pin
Roger Allen5-Feb-03 6:40
Roger Allen5-Feb-03 6:40 
GeneralRe: What's your goal? Pin
Andreas Saurwein5-Feb-03 10:09
Andreas Saurwein5-Feb-03 10:09 
GeneralRe: What's your goal? Pin
Jörgen Sigvardsson5-Feb-03 9:51
Jörgen Sigvardsson5-Feb-03 9:51 
GeneralRe: What's your goal? Pin
Andreas Saurwein5-Feb-03 10:07
Andreas Saurwein5-Feb-03 10:07 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.