Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Schon wieder format() (https://www.delphipraxis.net/157169-schon-wieder-format.html)

Muellermilchtrinker 1. Jan 2011 15:45

Delphi-Version: 2009

Schon wieder format()
 
Hallo DP,

wollt mal fragen wie das jetzt mit format geht. Ich möchte eine Integerzahl normal darstellen, wenn sie aber jetzt einstellig wird, dann soll eine nulldavor.
Also:
10 --> 10
5 --> 05

Uwe Raabe 1. Jan 2011 15:49

AW: Schon wieder format()
 
Hatten wir das nicht gerade?

Delphi-Quellcode:
result := Format('%.2d', [value]);

Muellermilchtrinker 1. Jan 2011 15:52

AW: Schon wieder format()
 
Ups, hab den Punkt vergessen :stupid:

Matze 1. Jan 2011 15:53

AW: Schon wieder format()
 
Nicht jeder verstehst die Hilfe oder benutzt diese, daher vielleicht ständig die gleichen Fragen? :?

Der Punkt ist meiner Meinung nach falsch. Er würde so doch 2 Nachkommastellen anzeigen oder nicht?
Aus dem Kopf hätte ich nun "%02d" gesagt.

Edit: Ok, das ist in anderen Programmiersprachen anders als in Delphi. :stupid:

DeddyH 1. Jan 2011 15:59

AW: Schon wieder format()
 
Der Punkt ist schon richtig.
Zitat:

d

Dezimal. Das Argument muss ein Integerwert sein. Der Wert wird in einen String umgewandelt, der aus Dezimalzahlen besteht. Wenn der Format-String einen Bezeichner für die Genauigkeit enthält, muss der resultierende String mindestens die angegebene Anzahl von Stellen aufweisen. Enthält er weniger Stellen, wird der String auf der linken Seite mit Nullen aufgefüllt.

Matze 1. Jan 2011 16:02

AW: Schon wieder format()
 
Jo, ich bin die C- bzw. C++-Formatbefehle gewohnt. Da geht's mit "%02d" ;)
Ich hätte erwartet, dass das in Delphi auch so ist, aber dem ist nicht so (schade gibt es nicht mal hier Standards).

Uwe hat Recht mit seinem Code.

himitsu 1. Jan 2011 16:21

AW: Schon wieder format()
 
Code:
%[index]:[länge].[genauigkeit][format]
Bei Delphi gibt es halt mehrere Zahlen, welche man da reinmacht.

für ganzzahlen hat man die position von [genauigkeit] (der fließkommazahlen) genommen, für die Nullen am Anfang.

[länge] ist die ganze Zahl mit Leerzeichen aufgefüllt


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:30 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