2017-12-07 3 views
0

Ich habe mich gefragt, ob es ein einfacherer Weg, um diese Zeichenfolge statt deklariere eine temporäre VariableGibt es einen optimalen Weg, um diese Zeichenfolge zu verketten

string tempValue = "000000000000000" + moneyValue; 
moneyValue= tempValue.Substring((tempValue).Length - 15, 15); 

ich auf einen kürzeren Weg zur Erreichung desselben freu verketten Ergebnis, gibt es irgendwelche?

Antwort

10

Es sieht so aus, als ob Sie nach einer prägnanteren Möglichkeit suchen, eine Zeichenfolge mit Nullen zu füllen.

.NET verfügt über eine integrierte Methode für das:

moneyValue = moneyValue.PadLeft(15, '0'); 
+0

ich immer gemocht, Heinz Ketchup nur heute benutzen wusste, dass ich warum .... danke Heinzi – napi15

1

PadLeft funktioniert, wenn Sie mit einer Zeichenfolge beginnen. Wenn Sie mit der Formatierung einer Zahl kombinieren Null padding wollen, können Sie D15 format für ganze Zahlen

int moneyValue = 123456; 
string moneyString = $"{moneyValue:D15}"; 

oder ein benutzerdefiniertes Format für andere numerische Typen

decimal moneyValue = 1234.56; 
string moneyString = $"{moneyValue:000000000000000}"; 
+0

@ napi15: Ja. '$" ... "' ist ein [interpolierter String] (https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/keywords/interpolated-strings) (verfügbar ab C# 6)). – Heinzi

Verwandte Themen