Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Zifferngruppierung (https://www.delphipraxis.net/127175-zifferngruppierung.html)

var-king 8. Jan 2009 21:33


Zifferngruppierung
 
Hey,

ich bin gerade dabei, einen Taschenrechner zu schreiben, der auch schon echt viele Funktionen hat. Vor kurzer Zeit kam ich auf die Idee, eine Funktion einzubauen, mit der die Ziffern gruppiert werden, also z.B. 123.456.000,99 statt 123456000,99. Ich hatte schon die Idee, das ganze mit einer Art "Schleife von hinten" zu realisieren, da die Zahl ja von hinten gesehen in Dreiergruppen zerlegt wird, und an jeder vierten Stelle den Punkt einzufügen. Was allerdings nicht so ganz geklappt hat. Hat vllt. jemand einen Vorschlag? Wäre dankbar für jede Hilfe!

LG,
var-king

mkinzler 8. Jan 2009 21:38

Re: Zifferngruppierung
 
ThousandSeparator

var-king 8. Jan 2009 22:13

Re: Zifferngruppierung
 
ok, danke schon mal. Aber wie verwendet man das? Habe viele sehr verschiedene Beispiele gefunden, die alle irgendwie nicht richtig funktionieren.

mkinzler 8. Jan 2009 22:17

Re: Zifferngruppierung
 
Beim Wandeln von Integer/Fliesskommazahlen in einen String, werden Dezimaltrenner und Tausendertrenner angewendet.

Delphi-Quellcode:
DecimalSeparator := ',';
ThousandSeparator := '.';

s := FloatToStr( 1234567.89);
Ergibt dann 1.234.567,89

Uwe Raabe 8. Jan 2009 22:33

Re: Zifferngruppierung
 
Zitat:

Zitat von mkinzler
Beim Wandeln von Integer/Fliesskommazahlen in einen String, werden Dezimaltrenner und Tausendertrenner angewendet.

Delphi-Quellcode:
DecimalSeparator := ',';
ThousandSeparator := '.';

s := FloatToStr( 1234567.89);
Ergibt dann 1.234.567,89

Nicht in meinem Delphi! Da gibt das nur "1234567,89".

Aber

Delphi-Quellcode:
  s := FormatFloat('#.###,##', 1234567.89);
ergibt das Gewünschte.

var-king 24. Jan 2009 13:57

Re: Zifferngruppierung
 
funzt, danke an alle ;)

himitsu 24. Jan 2009 14:44

Re: Zifferngruppierung
 
dies ginge och noch
Delphi-Quellcode:
S := Format("%.2n", [1234567.89]);
[edit] ups stümmt ja ... meinte och %n :wall:

Hawkeye219 24. Jan 2009 15:03

Re: Zifferngruppierung
 
Hallo,

Zitat:

Zitat von himitsu
dies ginge och noch
Delphi-Quellcode:
S := Format("%.2f", [1234567.89]);

Wenn eine Zifferngruppierung gewünscht ist, dann besser so:

Delphi-Quellcode:
S := Format('%.2n', [1234567.89]);
Zu beachten ist, dass als Argument in den eckigen Klammern ein Fließkommawert übergeben werden muss.

Gruß Hawkeye


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:34 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz