在c#中,我有一个整数值,需要转换为字符串,但它需要在前面加零:

例如:

int i = 1;

当我把它转换成字符串时,它需要变成0001

我需要知道c#中的语法。


当前回答

这里有一个很好的例子:

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 i=123;
string paddedI = i.ToString("D4");

填充int i以匹配int x的字符串长度,当两者都可以为负数时:

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

c# 6.0风格的字符串插值

int i = 1;
var str1 = $"{i:D4}";
var str2 = $"{i:0000}";

这里有一个很好的例子:

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
i.ToString("D4");

关于格式说明符,请参阅MSDN。