Mega Code Archive

 
Categories / Delphi / Files
 

Formatting a File Size in Bytes for Display Convert Bytes to String using Delphi

Title: Formatting a File Size in Bytes for Display - Convert Bytes to String using Delphi When working with files from Delphi you might want to display the size of a file to the user in a Explorer-like format where the file size is not displayed in bytes - but the display depends on the size of the actual file. To most users "45678123 b" is confusing - where "43.56 MB" is much more user friendly. Format Byte Size to String A custom Delphi function, FormatByteSize, converts a byte value into a string that represents the number expressed as a size value in bytes, kilobytes, megabytes, or gigabytes, depending on the size. //Format file byte size function FormatByteSize(const bytes: Longint): string; const B = 1; //byte KB = 1024 * B; //kilobyte MB = 1024 * KB; //megabyte GB = 1024 * MB; //gigabyte begin if bytes GB then result := FormatFloat('#.## GB', bytes / GB) else if bytes MB then result := FormatFloat('#.## MB', bytes / MB) else if bytes KB then result := FormatFloat('#.## KB', bytes / KB) else result := FormatFloat('#.## bytes', bytes) ; end;