In C # ho un valore intero che deve essere convertito in stringa ma deve aggiungere zeri prima di:
Per esempio:
int i = 1;
Quando lo converto in stringa deve diventare 0001
Devo conoscere la sintassi in C #.
In C # ho un valore intero che deve essere convertito in stringa ma deve aggiungere zeri prima di:
Per esempio:
int i = 1;
Quando lo converto in stringa deve diventare 0001
Devo conoscere la sintassi in C #.
Risposte:
i.ToString().PadLeft(4, '0')
- va bene, ma non funziona con numeri negativi
i.ToString("0000");
- forma esplicita - identificatore di formato
i.ToString("D4");
breve
$"{i:0000}";
- interpolazione di stringhe (C # 6.0+)
i.ToString("D4");
Vedi MSDN sugli identificatori di formato.
Ecco un buon esempio:
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
Puoi usare:
int x = 1;
x.ToString("0000");
string.Format("{0:0000}", x)
Interpolazione di stringhe di stile C # 6.0
int i = 1;
var str1 = $"{i:D4}";
var str2 = $"{i:0000}";
$"some text {x.ToStrig("D4")} after text"
i.ToString("0000");
Semplicemente
int i=123;
string paddedI = i.ToString("D4");
.NET ha una funzione semplice per farlo nella String
classe. Usa solo:
.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"
Qui voglio riempire il mio numero con 4 cifre. Ad esempio, se è 1, dovrebbe essere visualizzato come 0001, se 11 dovrebbe essere visualizzato come 0011.
Di seguito è riportato il codice che compie questo:
reciptno=1; // Pass only integer.
string formatted = string.Format("{0:0000}", reciptno);
TxtRecNo.Text = formatted; // Output=0001
Ho implementato questo codice per generare il numero di ricevuta del denaro per un file PDF.
Per int i
eseguire il pad in modo che corrisponda alla lunghezza della stringa di int x
, quando entrambi possono essere negativi:
i.ToString().PadLeft((int)Math.Log10(Math.Abs(x < 0 ? x * 10 : x)) + 1, '0')