将int 1,10,100格式化为字符串“001”,“010”,“100”的掩码

时间:2012-05-15 17:45:12

标签: c#

如何将掩码应用于以下列方式格式化输出文本的字符串(最多2个前导零):

int a = 1, b = 10, c = 100;
string aF = LeadingZeroFormat(a), bF = LeadingZeroFormat(b), cF = LeadingZeroFormat(c);
Console.Writeline("{0}, {1}, {2}", aF, bF, cF); // "001, 010, 100" 

最优雅的解决方案是什么?

提前致谢。

3 个答案:

答案 0 :(得分:42)

您可以使用Int32.ToString(“000”)以这种方式格式化整数。有关详细信息,请参阅Custom Numeric Format StringsInt32.ToString

string one = a.ToString("000"); // 001
string two = b.ToString("000"); // 010

答案 1 :(得分:13)

除了里德的建议,你可以直接用你的复合格式字符串:

int a = 1, b = 10, c = 100;
Console.WriteLine("{0:000}, {1:000}, {2:000}", a, b, c); // "001, 010, 100"

答案 2 :(得分:3)

  

要将整数显示为十进制值,请调用其ToString(String)   方法,并传递字符串“Dn”作为格式参数的值,   其中n表示字符串的最小长度。

int i = 10;
Console.WriteLine(i.ToString("D3"));

同时检查How to: Pad a Number with Leading Zeros