Konuyu Paylaş : facebook gplus twitter

Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Delphi Android Sayı Karmaşası [Çözüldü]
#1
Merhaba Arkadaşlar

Android cihazlar için geliştiridiğim projede dosya manager tarzı bir uygulama yazdım ama dosya boyutu bilgilendirmesi ile ilgili sorunlar yaşamaktayım. Barış atalay hocanın blogunda bulunan dosya boyutu hesaplaması için kullanılan bir hazır kodu kullanarak dosya boyutunu hesaplatıp listview içinde detail bölümünde yayınaya biliyorum. Fakat 1 gbtan sonra bir sayı karmaşası oluşuyor ve 2,440 gb olan bir dosyayı -1796328136 Byt şeklinde gösteriyor. Önce integer değerinden yaptığını düşündüm ama int64 felan yapmama rağmen sonuç değişmedi. Bu hatayı düzeltmek için nasıl bir yol izlemeliyim. Şimdiden yardımlarınız için teşekkürler. (Not: Delphi 10.1.2 Berlin kullanıcısıyım.)

function dosyaboyutubul(yol:string):String;
var
dosya:TFileStream;
dsize:Integer;
strSize:string;
begin
dosya:=TFileStream.Create(yol,fmOpenRead);
dsize:=dosya.Size;
if dSize < 1024 then
   begin
   strSize:=' Byt'
   end;
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;



Result:='Boyut :'+inttostr(dsize) + strsize;
FreeAndNil(dosya);
end;
Cevapla
#2
Yine de sorun Integer'dan kaynaklı gibi görünüyor. İlk olarak TFileStream'in Size değişkeni Int64 tipinde. Dolayısıyla siz de değişkeninizi böyle tanımlamalısınız.
Integer işaretli bir sayıdır ve -2147483648 ile 2147483647 arasında değer alabilir. Bu da max. 2 GB'lık bir dosya boyutunu okuyabileceğiniz anlamına gelir.
There's no place like 127.0.0.1
WWW
Cevapla
#3
Aynen hocam sıkıntı oradan kaynaklanıyormuş. Hata bendeymiş Smile bunu bir çok yerde kullanıyordum şimdi hepsini düzenlemek gerekecek.
Cevapla

Konuyu Paylaş : facebook gplus twitter



Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  Android Uygulamalarda Tasarım Paranoyaq 1 37 Dün, Saat: 19:35
Son Yorum: mcuyan
  Blocking dialogs not implemented on this platform on Android Platform Paranoyaq 4 210 17-01-2018, Saat: 13:52
Son Yorum: Paranoyaq
  Android Uygulama Arka Planda Kilitleniyor beklentili 10 226 08-01-2018, Saat: 15:06
Son Yorum: beklentili
  Delphi Dahili Hafıza Boyutu Öğrenme codder71 4 127 08-01-2018, Saat: 01:33
Son Yorum: codder71
  Delphi Android Java kullanmak AliZairov 10 871 21-12-2017, Saat: 18:09
Son Yorum: Abdullah ILGAZ



Konuyu Okuyanlar: 1 Ziyaretçi