【发布时间】:2011-12-11 07:54:40
【问题描述】:
可能重复:
Number formatting: how to convert 1 to "01", 2 to "02", etc.?
如何使用以下方案将int 转换为string?
-
1转换为0001 -
123转换为0123
当然,字符串的长度是动态的。对于此示例,它是:
int length = 4;
我怎样才能像这样转换?
【问题讨论】:
可能重复:
Number formatting: how to convert 1 to "01", 2 to "02", etc.?
如何使用以下方案将int 转换为string?
1 转换为 0001
123 转换为 0123
当然,字符串的长度是动态的。对于此示例,它是:
int length = 4;
我怎样才能像这样转换?
【问题讨论】:
像这样使用String.PadLeft:
var result = input.ToString().PadLeft(length, '0');
【讨论】:
ToString 有一个专门用于此目的的参数,使用它。
使用您可用的格式选项,使用Decimal 格式字符串。与直接字符串操作相比,它更加灵活,几乎不需要维护。
要使用至少 4 位数字表示字符串:
int length = 4;
int number = 50;
string asString = number.ToString("D" + length); //"0050"
【讨论】:
使用 ToString() 方法 - standard 和 custom 数字格式字符串。查看 MSDN 文章 How to: Pad a Number with Leading Zeros。
string text = no.ToString("0000");
【讨论】:
val.ToString("".PadLeft(length, '0'))
【讨论】: