2016-12-01 5 views
1

Ich bin auf der Suche nach einer generischen Lösung, so dass ich die Zeichenfolge generieren kann. Wie ich will, dass die ersten 10 Zeichen für die ID reserviert werden, müssen die nächsten 20 Zeichen für den Namen usw. reserviert werden, aber diese Zeichenlänge meine Änderung. Diese Anforderung gilt für ibm mq message. Z. B .: wenn meine ID 001 ist, Name ist namexxxx und 25 Jahren dann sollte meine letzte Zeichenfolge wie folgt aussehen:Benutzerdefinierte Format Zeichenfolge

001  namexxxx   25 

Antwort

4

String.PadRight Verwenden Sie das erreichen können. Sie können auch diese als Parameter an eine Methode übergeben, oder sie aus einer Konfigurationsdatei oder Datenbank lesen:

Console.WriteLine(id.PadRight(10) + name.PadRight(20) + age.PadRight(5)); 

Ein anderer Weg wäre String.Format zu verwenden, aber dieses ist ein bisschen unordentlicher parametrisieren:

Console.WriteLine(String.Format("{0,-10}{1,-20}{2,-5}", id, name, age)); 

Ausgang in beiden Fällen:

001  namexxxx   25 
+0

Dank PadRight – user1739969

+0

@ user1739969 funktioniert Bitte markieren Sie diese Antwort als angenommen, wenn Sie es nützlich finden. Wenn Sie nicht wissen, wie es geht, ist dies ein einfacher Schritt, der hier beschrieben wird: http://meta.stackexchange.com/a/5235 – user3185569