У C # у мене є ціле значення, яке потрібно перерахувати на рядок, але до нього потрібно додати нулі:
Наприклад:
int i = 1;
Коли я перетворюю його в рядок, він повинен стати 0001
Мені потрібно знати синтаксис у C #.
У C # у мене є ціле значення, яке потрібно перерахувати на рядок, але до нього потрібно додати нулі:
Наприклад:
int i = 1;
Коли я перетворюю його в рядок, він повинен стати 0001
Мені потрібно знати синтаксис у C #.
Відповіді:
i.ToString().PadLeft(4, '0')
- добре, але не працює для негативних чисел
i.ToString("0000");
- явна форма
i.ToString("D4");
- специфікатор формату короткої форми
$"{i:0000}";
- інтерполяція рядків (C # 6.0+)
i.ToString("D4");
Див. Розділ MSDN щодо специфікаторів формату.
Ось хороший приклад:
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
Ви можете використовувати:
int x = 1;
x.ToString("0000");
string.Format("{0:0000}", x)
Інтерполяція в рядку стилю C # 6.0
int i = 1;
var str1 = $"{i:D4}";
var str2 = $"{i:0000}";
$"some text {x.ToStrig("D4")} after text"
i.ToString("0000");
Просто
int i=123;
string paddedI = i.ToString("D4");
.NET має просту функцію робити це в String
класі. Просто використовуйте:
.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"
Тут я хочу прошити свій номер чотиризначним. Наприклад, якщо це 1, то він повинен відображатись як 0001, якщо він 11, він повинен відображатися як 0011.
Нижче наведено код, що виконує це:
reciptno=1; // Pass only integer.
string formatted = string.Format("{0:0000}", reciptno);
TxtRecNo.Text = formatted; // Output=0001
Я реалізував цей код, щоб створити номер квитанції для файлу PDF.