Soru = Seçilen dosyanın boyutunu gösteren programı fonksiyonda yapınız.
Şekli :
Kodlar :
Function DOSYABOYUTU(DOSYAADI: String): string;
var
dSize: Integer;
dFile: THandle;
strSize: String;
begin
dFile := CreateFile (PChar (DOSYAADI),0, FILE_SHARE_READ, nil, OPEN_EXISTING, 0, 0);
dSize := GetFileSize (dFile, nil);
CloseHandle (dFile);
if (dsize div 1024) > 0 then
begin
strSize := ' Kb';
dsize := dsize div 1024;
end;
if (dsize div 1024) > 0 then
begin
strSize := ' Mb';
dsize := dsize div 1024;
end;
if (dsize div 1024) > 0 then
begin
strSize := ' Gb';
dsize := dsize div 1024;
end;
if dsize = -1 then
RESULT := 'Geçersiz Dosya'
else
RESULT := floattostr(dsize) + strsize
end;
Procedure TForm1.Button1Click(Sender: TObject);
var
dosya:ansistring;
begin
dosya:='';
if opendialog1.execute then
begin
dosya:=ExtractShortPathName(opendialog1.filename);
label1.Caption := 'Dosyanın Toplam Boyutu : ' +
DOSYABOYUTU(dosya);
end;
end;
Çalışma Şekli :
Programı çalıştırdıktan sonra ‘Dosya Seç’ butonu tıklandığında ekrana dosya seçme penceresi gelir. Buradan dosyayı seçtikten sonra ‘Aç’ butonuna tıklandığında program ekrana toplam boyutunu yazdıracaktır.
Programı çalıştırmadan önce programa ek olarak Dialog kategorisinden ‘OpenDialog’ nesnesini ve kod kısmındaki uses kısmına ‘FileCtrl’ yazmayı unutmayın yoksa programınız hata verip çalışmayacaktır...
|