Entwickler-Ecke
Delphi Language (Object-Pascal) / CLX - Byte in MB umrechnen
LonghornUser - Do 31.07.03 16:23
Titel: Byte in MB umrechnen
Hallo.
Ich habe hier eine Byte-Ausgabe meines freien Festplatten speichers, jedoch wäre es besser 353320960 in MB anzeigen zu lassen, oder ? :lol:
Nur wie mache ich das mit Delphi ??
Danke im vorraus. ciao
maximus - Do 31.07.03 16:30
Moin...
Delphi-Quelltext
1:
| MBcount := byteCount / 1024 / 1024; |
:D
LonghornUser - Do 31.07.03 16:54
:oops: Stimmt :oops: :lol:
Aber da ist noch ein Problem:
Ich habe das Ergebnis als sehr große Zahl vorliegen, die einen Integer übersteigen:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8:
| var free_size, total_size: Int64; s:char; i:integer; begin
if GetDiskSize(s, free_size, total_size) then begin i:=free_size / 1024 / 1024; |
Und in der letzten Zeile liegt das Problem:
| Zitat: |
| "Incompatible Types: 'Integer' and 'Extend'" (Inkompatible Typen) 8) |
Was mache ich nun? Man mus immer bedenken, dass man keinen Integer nehmen kann, da die Byteanzahl manchmal einen Integer übersteigen würden.
Hilfe?
Moderiert von
Tino: Delphi- & Quote-Tags hinzugefügt.
derDoc - Do 31.07.03 17:29
Wie wäre ein Extended anstatt dem Int64?
mirage228 - Do 31.07.03 17:30
deklariere "i" mal als "Extended"
sollte gehen
mfG
mirage228
LonghornUser - Do 31.07.03 18:00
das geht super. die rechnung geht jetz.
Aber wie bringe ich das Extendend jetz wieder in ein label also in einen integer oder einen string ?
matze - Do 31.07.03 18:10
auch mit intToStr !!! oder etwa nicht ?
LonghornUser - Do 31.07.03 20:09
Nein ! Leider nicht so einfach. Er sagt:
| Zitat: |
[Error] Unit1.pas(115): There is no overloaded version of 'IntToStr' that can be called with these arguments
[Error] Unit1.pas(116): There is no overloaded version of 'IntToStr' that can be called with these arguments |
Was kann ich jetzt tun ?? Weiß nicht mehr so recht weiter !!
Moderiert von
Tino: Quote-Tags hinzugefügt.
UC-Chewie - Do 31.07.03 20:10
Extended ist kein Integer- sondern ein Floattyp. Also FloatttoStr.
Aya - Do 31.07.03 20:15
Hi,
und damit alles perfekt ist machste:
Delphi-Quelltext
1: 2: 3:
| uses Math; [...] Label1.Caption:=FloatToStr(RoundTo(i,-2)); |
Damit zeigste nur 2 Stellen nach dem Komma an.
Au'revoir,
Aya~
LonghornUser - Fr 01.08.03 09:58
Suuper. Ich wusste all das nicht, weil ich Informatik in meiner Schule leider nicht machen kann, weil kein Kurs zustande kommen wird schätz ich mal. :x Aber wer weiß vielleicht ja doch.
Deshalb: DANKE Alles funktioniert nun
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!