Bin ich der einzige, der der Meinung ist, dass hier eine
Exception ausgelöst werden sollte, wenn die Konvertierung fehlschlägt? Man sucht den Fehler nämlich hinterher u.U. ewig, wenn das Programm aus unerfindlichen Gründen bei manchen Dateien die falsche Dateigröße anzeigt...
Also wenn schon, dann so:
Delphi-Quellcode:
function Kb2Byte(SrcKb: String): Int64;
var tmpSize: Double;
begin
if TryStrToFloat(SrcKb, tmpSize) then
Result := Trunc(tmpSize*1024)
else
raise EConvertError.CreateFmt('"%s" is not a valid file size', [SrcKb]);
end;
Aber abgesehen davon, ist Aphtons Lösung die korrekte, da sie mit einbezieht, dass die Nachkommastellen nur bis 999 gehen, und nicht bis 1024.