C# преобразовать int в строку с нулями заполнения?



В C# у меня есть целочисленное значение, которое нужно преобразовать в строку, но ему нужно добавить нули перед:



Например:



int i = 1;


когда я преобразовать его в строку, он должен стать 0001



Мне нужно знать синтаксис в C#.

586   10  

10 ответов:

i.ToString().PadLeft(4, '0') - хорошо, но не работает для отрицательных чисел
i.ToString("0000"); - явный вид
i.ToString("D4"); - спецификатор формата короткой формы

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");

C# 6.0 стиль строки интерполяции

int i = 1;
var str1 = $"{i:D4}";
var str2 = $"{i:0000}";
i.ToString("0000");

просто

int i=123;
string paddedI = i.ToString("D4");
int p = 3; // fixed length padding
int n = 55; // number to test

string t = n.ToString("D" + p); // magic     

Console.WriteLine("Hello, world! >> {0}", t);

// outputs: 
// Hello, world! >> 055

здесь я хочу, чтобы заполнить мой номер с 4 цифры. Например, если это 1, то он должен отображаться как 0001, если он 11, он должен отображаться как 0011.

Ниже приведен код, который выполняет этот:

reciptno=1; // Pass only integer.

string formatted = string.Format("{0:0000}", reciptno);

TxtRecNo.Text = formatted; // Output=0001

я реализовал этот код для создания номера поступления денег для PDF-файла.

на площадку int i чтобы соответствовать длине строки int x, когда оба могут быть отрицательными:

i.ToString().PadLeft((int)Math.Log10(Math.Abs(x < 0 ? x * 10 : x)) + 1, '0')

Comments

    Ничего не найдено.