Präzisionsspezifizierer als Parameter wie printf, aber in String.Format

8

Mit printf konnte ich den Genauigkeitswert als zusätzlichen Parameter mit * angeben. Existiert die gleiche Funktionalität im C # String.Format?

bearbeiten: Beispiel:

%Vor%     
Sprintstar 26.08.2010, 16:33
quelle

5 Antworten

4

Nein, String.Format unterstützt den Sternoperator nicht. Sie müssten entweder eine String-Verkettung verwenden

%Vor%

oder verschachtelt String.Format s

%Vor%     
Heinzi 27.08.2010, 07:50
quelle
4

Das Formatieren der Formatzeichenfolge sollte den folgenden Zweck erfüllen:

%Vor%

Es wird 0001 ausgeben.

Beachten Sie, wie {{ und }} verwendet werden, um { und } in einer Formatzeichenfolge zu entfernen.

    
Martin Liversage 27.08.2010 07:55
quelle
2

Ja, das ist möglich. Sie müssen nur die Genauigkeitsnummer nach dem Formatspezifizierer hinzufügen. Zum Beispiel

%Vor%

Was der Präzisionsmodifikator tut, ist jedoch spezifisch für den gewählten Formattyp. In diesem Fall steht das D für die Dezimalausgabe. Hier ist ein Link zu den Arten von numerischen Formaten und was die Präzision für jede von ihnen bedeutet.

JaredPar 26.08.2010 16:36
quelle
1

Meine Problemumgehung ähnelt der Implementierung von QString::arg() durch Qt. Ich habe nur einen Platzhalter und dann ersetzt durch den Wert von numericPrecision .

%Vor%     
sashoalm 04.10.2016 13:11
quelle
0

Um eine Zeichenfolge zu formatieren, die für die angegebene Länge linksbündig ausgerichtet ist.

%Vor%

oder

%Vor%

Das Ergebnis sollte ein Name sein, der auf der rechten Seite für eine Gesamtlänge von 20 Zeichen aufgefüllt ist.

    
kdahl 11.04.2016 23:06
quelle