C # dize dönüştürülmesi gereken bir tamsayı değeri var ama önce sıfır eklemek gerekir:
Örneğin:
int i = 1;
Dize dönüştürdüğümde 0001 olması gerekiyor
C # sözdizimini bilmek gerekiyor.
C # dize dönüştürülmesi gereken bir tamsayı değeri var ama önce sıfır eklemek gerekir:
Örneğin:
int i = 1;
Dize dönüştürdüğümde 0001 olması gerekiyor
C # sözdizimini bilmek gerekiyor.
Yanıtlar:
i.ToString().PadLeft(4, '0')
- tamam, ancak negatif sayılar için çalışmıyor
i.ToString("0000");
- açık form
i.ToString("D4");
- kısa form biçimi belirleyicisi
$"{i:0000}";
- dize enterpolasyonu (C # 6.0+)
i.ToString("D4");
Biçim belirteçleri için MSDN'ye bakın .
İşte iyi bir örnek:
int number = 1;
//D4 = pad with 0000
string outputValue = String.Format("{0:D4}", number);
Console.WriteLine(outputValue);//Prints 0001
//OR
outputValue = number.ToString().PadLeft(4, '0');
Console.WriteLine(outputValue);//Prints 0001 as well
Kullanabilirsiniz:
int x = 1;
x.ToString("0000");
string.Format("{0:0000}", x)
C # 6.0 stili dize enterpolasyonu
int i = 1;
var str1 = $"{i:D4}";
var str2 = $"{i:0000}";
$"some text {x.ToStrig("D4")} after text"
i.ToString("0000");
Çantada keklik
int i = 1;
i.ToString("0###")
basitçe
int i=123;
string paddedI = i.ToString("D4");
.NET, String
sınıfta bunu yapmak için kolay bir işleve sahiptir . Sadece kullan:
.ToString().PadLeft(4, '0') // that will fill your number with 0 on the left, up to 4 length
int i = 1;
i.toString().PadLeft(4,'0') // will return "0001"
Burada numaramı 4 haneli doldurmak istiyorum. Örneğin, 1 ise 0001, 11 ise 0011 olarak göstermelidir.
Bunu gerçekleştiren kod aşağıdadır:
reciptno=1; // Pass only integer.
string formatted = string.Format("{0:0000}", reciptno);
TxtRecNo.Text = formatted; // Output=0001
Bir PDF dosyası için para makbuz numarası oluşturmak için bu kodu uyguladı.