4

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

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

计数器的定义:

int counter;

我的增量: counter++;

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

4

7 回答 7

15

关于自定义数字格式字符串

int value = 123;
Console.WriteLine(value.ToString("00000"));
// Displays 00123 
于 2013-08-29T07:52:23.510 回答
4

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

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

或者用Format方法:

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

使用 C# 6.0 (Visual Studio 2015) 及更高版本的字符串插值,这将是:

$"... {counter:D5} ..."
于 2013-08-29T07:56:59.303 回答
3

你的意思是这样的:

  counter.ToString().PadLeft(5, '0')
于 2013-08-29T07:52:51.813 回答
2

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

尝试这个:

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

或同等学历):

string counterString = counter.ToString("d5");
于 2013-08-29T07:52:45.310 回答
1

您可以PadLeft使用String.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);
    // ...
}
于 2013-08-29T07:57:15.327 回答
0

您可以使用 ToString 函数:

counter.ToString("00000");
于 2013-08-29T08:00:57.183 回答
0

这应该这样做

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

或者

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

输出将是00005

于 2013-08-29T07:55:02.353 回答