Click here to Skip to main content
15,885,365 members
Home / Discussions / C / C++ / MFC
   

C / C++ / MFC

 
GeneralRe: File size anf File size on disk Pin
peterchen1-Oct-09 0:15
peterchen1-Oct-09 0:15 
GeneralRe: File size anf File size on disk Pin
Saurabh.Garg1-Oct-09 0:16
Saurabh.Garg1-Oct-09 0:16 
GeneralRe: File size anf File size on disk Pin
includeh101-Oct-09 2:31
includeh101-Oct-09 2:31 
GeneralRe: File size anf File size on disk PinPopular
Saurabh.Garg1-Oct-09 2:37
Saurabh.Garg1-Oct-09 2:37 
GeneralRe: File size anf File size on disk Pin
Member 41945931-Oct-09 8:21
Member 41945931-Oct-09 8:21 
GeneralRe: File size anf File size on disk Pin
Saurabh.Garg1-Oct-09 16:22
Saurabh.Garg1-Oct-09 16:22 
GeneralRe: File size anf File size on disk Pin
Iain Clarke, Warrior Programmer1-Oct-09 1:46
Iain Clarke, Warrior Programmer1-Oct-09 1:46 
AnswerRe: File size anf File size on disk Pin
peterchen1-Oct-09 0:14
peterchen1-Oct-09 0:14 
File size is the amount of data you can read from the file, i.e. how many bytes ReadFile() would return. It is affected by WriteFile, SetFileSize etc.

The file size on disk is the amount of storage actually requried to hold the file. There are many factors affecting that:

Disk clusters - disks are allocated in clusters (e.g 4KB blocks). In thsi case, even a 5 byte file will occupy 4K on disk.

File System Compression

Sparse files - some file systems, like NTFS, allow "sparse files", where long runs of 0 data are not stored.

Alternate Data Streams - on some file systems such as NTFS, each file can contain multiple "data streams". The data you "expect" - like the text in a text file - is the default stream. MS uses alternate data streams e.g. to store document properties, the "this file was downloaded from the eeevil internet" flag etc. They are quite cool, but limited to file systems that support them.


Calculating these sizes is tricky.[^] As Raymond Chen notes, there is no straightforward API for that, because how to calculate the size largely depends on the reason why you need to know the size. (Backup storage amount? percentage of disk occupied? Should alternate streams be included? etc.)

Personally, I love the idea that Raymond spends his nights posting bad regexs to mailing lists under the pseudonym of Jane Smith. He'd be like a super hero, only more nerdy and less useful. [Trevel]
| FoldWithUs! | sighist


GeneralRe: File size anf File size on disk Pin
includeh101-Oct-09 0:22
includeh101-Oct-09 0:22 
GeneralRe: File size anf File size on disk Pin
peterchen1-Oct-09 5:26
peterchen1-Oct-09 5:26 
AnswerRe: File size and File size on disk Pin
Randor 1-Oct-09 2:29
professional Randor 1-Oct-09 2:29 
QuestionTo construct a C++ code from a given Visual Basic String. Pin
Vishrant Shah30-Sep-09 22:56
Vishrant Shah30-Sep-09 22:56 
AnswerRe: To construct a C++ code from a given Visual Basic String. Pin
Hans Dietrich30-Sep-09 23:09
mentorHans Dietrich30-Sep-09 23:09 
AnswerRe: To construct a C++ code from a given Visual Basic String. Pin
Cedric Moonen30-Sep-09 23:12
Cedric Moonen30-Sep-09 23:12 
GeneralRe: To construct a C++ code from a given Visual Basic String. Pin
Vishrant Shah30-Sep-09 23:59
Vishrant Shah30-Sep-09 23:59 
GeneralRe: To construct a C++ code from a given Visual Basic String. Pin
Cedric Moonen1-Oct-09 0:07
Cedric Moonen1-Oct-09 0:07 
GeneralRe: To construct a C++ code from a given Visual Basic String. Pin
Vishrant Shah1-Oct-09 0:14
Vishrant Shah1-Oct-09 0:14 
GeneralRe: To construct a C++ code from a given Visual Basic String. Pin
Cedric Moonen1-Oct-09 0:18
Cedric Moonen1-Oct-09 0:18 
GeneralRe: To construct a C++ code from a given Visual Basic String. Pin
Vishrant Shah1-Oct-09 0:41
Vishrant Shah1-Oct-09 0:41 
GeneralRe: To construct a C++ code from a given Visual Basic String. Pin
Richard MacCutchan1-Oct-09 0:50
mveRichard MacCutchan1-Oct-09 0:50 
GeneralRe: To construct a C++ code from a given Visual Basic String. Pin
CPallini1-Oct-09 2:01
mveCPallini1-Oct-09 2:01 
AnswerRe: To construct a C++ code from a given Visual Basic String. Pin
CPallini30-Sep-09 23:20
mveCPallini30-Sep-09 23:20 
Questionvery strange memory problem ....please help Pin
dharani30-Sep-09 22:38
dharani30-Sep-09 22:38 
AnswerRe: very strange memory problem ....please help Pin
Hans Dietrich30-Sep-09 23:12
mentorHans Dietrich30-Sep-09 23:12 
AnswerRe: very strange memory problem ....please help Pin
KarstenK30-Sep-09 23:19
mveKarstenK30-Sep-09 23:19 

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.