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
Question [ ÇÖZÜLDÜ ] SQLİTE bağlantı sorunu BY-HAYALET 9 245 10-07-2018, Saat: 12:41
Son Yorum: BY-HAYALET
  Android APİ sorunu - Google Play BY-HAYALET 18 575 09-07-2018, Saat: 09:47
Son Yorum: quiet1day
  Android Cihaz İçin Form Tasarlama hi_selamlar 4 130 27-06-2018, Saat: 12:28
Son Yorum: hi_selamlar
  [ÇÖZÜLDÜ]-FDConnection - SQL Server Dil Ayarlama hi_selamlar 1 75 27-06-2018, Saat: 00:31
Son Yorum: hi_selamlar
  Android Ayar Degistirme gonulali 0 78 12-06-2018, Saat: 11:25
Son Yorum: gonulali



Konuyu Okuyanlar: 1 Ziyaretçi