5位数的计数器

时间:2013-08-29 07:49:47

标签: c# filenames counter auto-increment

我想要5位数的计数器,例如:00000,00001,00002 .... 我用这个命令创建文件:

FileStream Fl = File.Create(@"C:\\U\\L\\Desktop\\" + "i" + (counter) + ".xml");

计数器的定义:

int counter;

我的增量: counter++;

你有什么想法,我怎么能做5位数的计数器?感谢所有想法:)

7 个答案:

答案 0 :(得分:14)

关于custom numeric format strings

int value = 123;
Console.WriteLine(value.ToString("00000"));
// Displays 00123 

答案 1 :(得分:3)

你的意思是这样的:

  counter.ToString().PadLeft(5, '0')

答案 2 :(得分:2)

将计数器转换为字符串时,您只需使用适当的格式规范。

试试这个:

string counterString = counter.ToString("00000");

或(等效):

string counterString = counter.ToString("d5");

答案 3 :(得分:2)

您可以使用标准格式字符串:

... + counter.ToString("D5") + ...

或使用Format方法:

string.Format("... {0:D5} ...", counter)

使用C#6.0(Visual Studio 2015)及更高版本的 string interpolation ,它将是:

$"... {counter:D5} ..."

答案 4 :(得分:1)

您可以将PadLeftString.Format一起使用。请注意,如果您构建路径,则应使用Path.Combine

int counter = 0;
for (int i = 0; i < 1000; i++)
{
    string counterText = (counter++).ToString().PadLeft(5, '0');
    string fileName = string.Format("i{0}.xml", counterText);
    string fullName = Path.Combine(@"C:\U\L\Desktop\", fileName);
    FileStream Fl = File.Create(fullName);
    // ...
}

答案 5 :(得分:0)

这应该做到

int counter = 5;
string asString = counter.ToString("D5");

asString = string.Format("{0:00000}", counter);

输出为00005

答案 6 :(得分:0)

您可以使用ToString功能:

counter.ToString("00000");