حساب حجم الملفات بـ ( Byte / KB /MB /GB / TB)
#2
وعليكم السلام ورحمة الله وبركاته
فكرة جميلة Smile
هناك توابع API Windows جاهزة لحساب حجم الملفات بـ KB أو B
كود :
(* ----------------------------------------- Use this function to display the "69.1 Kb" instead 70846, "1.61 Mb" instead 1697109, etc... ----------------------------------------- *) // API declarations function StrFormatByteSize(dw: DWORD; szBuf: PChar; uiBufSize: UINT): PChar; stdcall; external 'shlwapi.dll' name 'StrFormatByteSizeA'; function StrFormatKBSize(qdw: LONGLONG; szBuf: PChar; uiBufSize: UINT): PChar; stdcall; external 'shlwapi.dll' name 'StrFormatKBSizeA'; // --------- // Code // --------- // ------------------------------------------------------- // function Formatted_FileSize(SizeInBytes: Cardinal) : String; var arrSize: array[0..255] of Char; begin // same formating like in statusbar of Explorer StrFormatByteSize(SizeInByte, arrSize, Length(arrSize) - 1); Result := Trim(arrSize); end; // ------------------------------------------------------- // function KB_Formatted_FileSize(SizeInKB: Cardinal) : String; var arrSize: array[0..255] of Char; begin // same formating like in Size column of Explorer in detailed mode StrFormatKBSize(SizeInKB, arrSize, Length(arrSize)-1); Result := Trim(arrSize); end; // ------------------------------------------------------- //
الكود لـ Mike Shkolnik
لم أجربه الآن، أظن كان به خلل صغير
بالتوفيق.
الرد


الردود في هذا الموضوع
حساب حجم الملفات بـ ( Byte / KB /MB /GB / TB) - بواسطة kachwahed - 22-02-2011, 05:07 PM

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم