Добавить дополнение нулями к строке

159

Как добавить «0» к строке, чтобы длина моей строки всегда была 4?

пример

If input "1", 3 padding is added = 0001
If input "25", 2 padding is added = 0025
If input "301", 1 padding is added = 0301
If input "4501", 0 padding is added = 4501
001
источник

Ответы:

295

Вы можете использовать PadLeft

var newString = Your_String.PadLeft(4, '0');
kemiller2002
источник
20
Имейте в виду, что "12345".PadLeft(4,'0')это все еще "12345" - это не будет урезать это. Между прочим, это не умаляет этого ответа, поскольку отвечает всем спецификациям (есть что-то странное удовлетворение в том, что выбранный вами ответ был выбран в качестве принятого (хотя и не настолько удовлетворительный, как, конечно, один из ваших принятых), сортировка как будто твой сын учится в лучшей школе), просто подумал, что упомяну об этом на случай, если когда-нибудь в будущем он поднимет свою уродливую голову. Cripes, я надеюсь, что эти скобки сбалансированы :-)
paxdiablo
20
@paxdiablo: они были до смайлика.
Пол Руане
1
"1.2".PadRight(4,'0')также работает для нуля, заполняя номер строки, такой как «1.20». Я могу сделать это, чтобы обрезать и заполнить простой номер строки <10000. num = num.length > 4 ? num.Substring(0,4) : num.PadRight(4,'0');
Дэн Рэндольф,
59
myInt.ToString("D4");
Рекс М
источник
11
Вопрос в том, как добавить отступ "к строке".
Мэтью Флэшен
10
string.Format("{0:D4}", myInt)
Тонатио
31
string strvalue="11".PadRight(4, '0');

выход = 1100

string strvalue="301".PadRight(4, '0');

выход = 3010

string strvalue="11".PadLeft(4, '0');

выход = 0011

string strvalue="301".PadLeft(4, '0');

выход = 0301

Ширадж Момин
источник
1
int num = 1;
num.ToString("0000");
Нур Е Алам Робин
источник