订购带前导零的序列号

时间:2013-07-04 01:59:42

标签: c# numbers padding serial-number

我正在尝试生成一个带有前导零的有序序列号列表,如下所示:

00000000001
00000000002
00000000003
...
...
00000000101
00000000102
00000000103
...
...
00099999991
00099999992
...
...
99999999999 - END

我最好的尝试是:

long fn;
for (fn = 100000000000; fn < 999999999999; fn++)
{
    Console.WriteLine(fn);
}

我想将所有这些序列号写入文件,虽然我不希望它看起来像1 - 999999999999,但更像是从000000000000到999999999999生成的序列号。

2 个答案:

答案 0 :(得分:2)

格兰特的答案有效,我的偏好是:

Console.WriteLine("{0:00000000000}", fn);

Console.WriteLine(fn.ToString("00000000000"));

但实际上,这取决于你最可读的......

请在此处查看有关自定义数字字符串格式的文档:http://msdn.microsoft.com/en-us/library/0c899ak8.aspx

答案 1 :(得分:1)

一个选项是用零填充:

Console.WriteLine(fn.ToString().PadLeft(12, '0'));

如果fn = 123,则会打印出000000000123