![]() |
Delphi-Version: 5
Kommazahlen
Hallo,
ich habe mir mal vor ein paar Jahren eine Funktion gebastelt, die mir von einer Kommazahl den Ganzzahlenwert und den Nachkommawert ausgibt (für weitere Berechnungen). Ich weiß, das ist mit Pos und Copy schnell gelöst. Gibt es aber vielleicht inzwischen in Delphi XE 2 bis 7 eine Funktion, die das automatisch ausgibt, wie z.B. bei einem Dateinahmen den Namen und die Endung? Oder aber gibt es eine Funktion, die mir z.B. von einer Uhrzeit den Stunden- und Minutenwert zurückgeben kann, als Basis z.B. "03:30" oder "3,3"? |
AW: Kommazahlen
Zitat:
Delphi-Quellcode:
und
Trunc
Delphi-Quellcode:
. Geht aber nur, wenn es schon als Zahl vorliegt. Bei einem String funktioniert das nicht.
Frac
Zitat:
|
AW: Kommazahlen
Zitat:
![]() ![]() |
AW: Kommazahlen
Zitat:
Wenn Du also bisher nur mit Strings gearbeitet hast, wird es Zeit, dich mit den numerischen Datentypen und den damit verbundenen Funktionen auseinanderzusetzen. Wenn Du dich aber mit numerischen Datentypen auskennst, dann verwende Sie. |
AW: Kommazahlen
Zitat:
Float als String ist natürlich blöde und da finge man dann mit Copy, Pos, Split oder sowas an. Als Flieskommazahl, wären die äquivalenten Funktionen die bereits genannten Trunc und Frac, welche es schon vor Delphi gab (in Turbo Pascal). Und nein, das Dezimaltrennzeichen ist nicht immer ein
Delphi-Quellcode:
, denn die Amis haben z.B. den Dezimalpunkt und kein Dezimalkomma, womit dein Programm in einem englischen Windows nicht funktionieren würde. :stupid:
,
|
AW: Kommazahlen
Zitat:
An himitsu: Genau. :-D Diese sind mir sehr gut bekannt, nützen mir aber im Float-Bereich nicht die Bohne. Mit Copy und Pos habe ich bisher gearbeitet, ich hatte Hoffnung mittlerweile gibt es vielleicht eine Routine dafür. An Jasocul: Danke für die Tip, DateUtils schaue ich mir näher an. |
AW: Kommazahlen
Die Hinweise auf Trunc und Frac scheinst Du übersehen zu haben, die machen genau das, was Du willst: Vor- und Nachkommaanteil liefern.
|
[Gelöst]AW: Kommazahlen
Habe ich nicht. Frac liefert mir wieder eine Kommazahl, 0,XYZ. Da habe ich sie wieder, meine Kommazahl.
Der Hinweis auf DateUtils war die rettende Idee. MinuteOf und HourOf liefern mir genau das, was ich benötige, vielen Dank! So wandle ich meine Kommazahl in ein DateTime-bzw. Time-Format und lasse mir Stunde und Minute ausgeben. |
AW: Kommazahlen
Warum speicherst Du Daten/Uhrzeiten in Strings?
Frac liefert den Zeitwert (TTIme = Double Nachkommawert) |
AW: Kommazahlen
Ich glaube das fummeln mit der Nachkommastelle eines TDateTime war nur ein Umweg den er jetzt (zum Glück) nicht mehr gehen braucht.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:33 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz