我想要5位数的计数器,例如:00000,00001,00002 .... 我用这个命令创建文件:
FileStream Fl = File.Create(@"C:\\U\\L\\Desktop\\" + "i" + (counter) + ".xml");
计数器的定义:
int counter;
我的增量:
counter++
;
你有什么想法,我怎么能做5位数的计数器?感谢所有想法:)
答案 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)
您可以将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);
// ...
}
答案 5 :(得分:0)
这应该做到
int counter = 5;
string asString = counter.ToString("D5");
或
asString = string.Format("{0:00000}", counter);
输出为00005
答案 6 :(得分:0)
您可以使用ToString功能:
counter.ToString("00000");