将int(number)转换为带前导零的字符串? (4位数)

时间:2011-12-11 07:54:41

标签: c# c#-4.0

  

可能重复:
  Number formatting: how to convert 1 to "01", 2 to "02", etc.?

如何使用以下方案将int转换为string

  • 1转换为0001
  • 123转换为0123

当然,字符串的长度是动态的。对于此示例,它是:

int length = 4;

我该如何转换呢?

4 个答案:

答案 0 :(得分:99)

像这样使用String.PadLeft

var result = input.ToString().PadLeft(length, '0');

答案 1 :(得分:85)

使用您可以使用的格式选项,使用Decimal格式字符串。与直接字符串操作相比,它更灵活,几乎不需要维护。

使用至少4位数来获取字符串表示:

int length = 4;
int number = 50;
string asString = number.ToString("D" + length); //"0050"

答案 2 :(得分:55)

使用ToString()方法 - standardcustom数字格式字符串。请查看MSDN文章 How to: Pad a Number with Leading Zeros

string text = no.ToString("0000");

答案 3 :(得分:4)

val.ToString("".PadLeft(length, '0'))