Adicionar preenchimento zero a uma string

159

Como adiciono preenchimento "0" a uma string para que meu comprimento seja sempre 4?

Exemplo

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
fonte

Respostas:

295

Você pode usar o PadLeft

var newString = Your_String.PadLeft(4, '0');
kemiller2002
fonte
20
Lembre-se de que ainda"12345".PadLeft(4,'0') é "12345" - não o truncará. Isso não prejudica esta resposta, já que ela atende a todas as especificações (há algo estranhamente satisfatório em ter uma resposta que você escolheu como a mais aceita) (embora não seja tão satisfatória quanto aceitar um de seus próprios, é claro). de como seu filho entrando na melhor escola), apenas pensei em mencioná-lo, caso ele levantasse sua cabeça feia em algum momento no futuro. Cripes, eu espero que esses parênteses são equilibradas :-)
paxdiablo
20
@paxdiablo: Eles foram até o smiley.
Paul Ruane
1
"1.2".PadRight(4,'0')também funciona para zero, preenchendo um número de sequência como "1,20". Eu posso fazer isso para truncar e preencher uma série seqüência simples <10000. num = num.length > 4 ? num.Substring(0,4) : num.PadRight(4,'0');
Dan Randolph
59
myInt.ToString("D4");
Rex M
fonte
11
A questão é como adicionar preenchimento "a uma string".
Matthew Flaschen
10
string.Format("{0:D4}", myInt)
Tonatio 02/09/2015
31
string strvalue="11".PadRight(4, '0');

output = 1100

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

output = 3010

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

output = 0011

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

output = 0301

Shiraj Momin
fonte
9
"1".PadLeft(4, '0');
Matthew Flaschen
fonte
1
int num = 1;
num.ToString("0000");
Noor E Alam Robin
fonte