Переменная String.Format length - PullRequest
2 голосов
/ 03 марта 2012

У меня следующий код:

var str = "ABC";
var n = 7;
var output = String.Format("{0,n}", str);

Это должно вывести строку

"    ABC"

Как мне изменить строку выше?

Ответы [ 3 ]

8 голосов
/ 03 марта 2012

Строки формата тоже просто строки - вы можете определить формат отдельно:

int n = 3;
string format = string.Format("{{0,{0}}}", n);
//or more readable: string format = "{0," + n + "}";
var output = string.Format(format, str);

Редактировать:

После вашего обновления вы можете увидеть, что то, что вы хотите, также может быть достигнуто с помощью PadLeft():

var str = "ABC";
string output = str.PadLeft(7);
6 голосов
/ 03 марта 2012

Просто напишите:

var lineLength = String.Format("{0," + n + "}", str);
1 голос
/ 02 ноября 2015
var s="Hello my friend";
string leftSpace = s.PadLeft(20,' '); //pad left with special character
string rightSpace = s.PadRight(20,' '); //pad right with special character
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...