Aggiungi zero-padding a una stringa


159

Come faccio ad aggiungere il riempimento "0" a una stringa in modo che la lunghezza della mia stringa sia sempre 4?

Esempio

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

Risposte:


295

Puoi usare PadLeft

var newString = Your_String.PadLeft(4, '0');

20
Tieni presente che "12345".PadLeft(4,'0')è ancora "12345" - non lo troncerà. Questo non toglie nulla a questa risposta dal momento che soddisfa tutte le specifiche (c'è qualcosa di stranamente soddisfacente nell'avere una risposta che hai votato scelta come accettata (anche se non altrettanto soddisfacente come avere una delle tue accettate ovviamente), ordina di come tuo figlio che sta entrando nella migliore scuola), ho pensato di menzionarlo nel caso in cui avesse sollevato la sua brutta testa in futuro. Cripes, spero che quelle parentesi siano bilanciate :-)
paxdiablo il

20
@paxdiablo: erano fino allo smile.
Paul Ruane,

1
"1.2".PadRight(4,'0')funziona anche per zero riempiendo un numero di stringa come "1.20". Posso farlo per troncare e riempire un semplice numero di stringa <10000. num = num.length > 4 ? num.Substring(0,4) : num.PadRight(4,'0');
Dan Randolph


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

uscita = 1100

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

uscita = 3010

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

uscita = 0011

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

uscita = 0301



Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.