Dodaj wypełnienie zerami do ciągu

159

Jak dodać dopełnienie „0” do ciągu, aby długość mojego ciągu zawsze wynosiła 4?

Przykład

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
źródło

Odpowiedzi:

295

Możesz użyć PadLeft

var newString = Your_String.PadLeft(4, '0');
kemiller2002
źródło
20
Pamiętaj, że nadal"12345".PadLeft(4,'0') jest to „12345” - nie spowoduje to obcięcia. To nie umniejsza tej odpowiedzi przy okazji, ponieważ spełnia ona wszystkie wymagania (jest coś dziwnie satysfakcjonującego w tym, że odpowiedź, którą wybrałeś jako zaakceptowana, nie jest tak satysfakcjonująca, jak posiadanie jednej z twoich zaakceptowanych, oczywiście), sort jakby twój syn dostał się do najlepszej szkoły), pomyślałem, że wspomnę o tym na wypadek, gdyby kiedyś w przyszłości podniósł swoją brzydką głowę. Cholera, mam nadzieję, że te nawiasy są wyważone :-)
paxdiablo
20
@paxdiablo: Byli do buźki.
Paul Ruane
1
"1.2".PadRight(4,'0')działa również przy zerowym wypełnianiu ciągów liczbowych, takich jak „1,20”. Mogę to zrobić, aby skrócić i wypełnić prosty ciąg liczbowy <10000. num = num.length > 4 ? num.Substring(0,4) : num.PadRight(4,'0');
Dan Randolph
59
myInt.ToString("D4");
Rex M
źródło
11
Pytanie brzmi, jak dodać dopełnienie „do ciągu”.
Matthew Flaschen
10
string.Format("{0:D4}", myInt)
Tonatio
31
string strvalue="11".PadRight(4, '0');

wyjście = 1100

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

wyjście = 3010

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

wyjście = 0011

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

wyjście = 0301

Shiraj Momin
źródło
9
"1".PadLeft(4, '0');
Matthew Flaschen
źródło
1
int num = 1;
num.ToString("0000");
Noor E Alam Robin
źródło