C#文件命名递增名称001++;

C#文件命名递增名称001++;,c#,file,naming,C#,File,Naming,我正在使用C#创建一个小应用程序。我需要以递归的方式命名文件,在创建文件时增加文件名。我需要以下格式的文件名:“alt-001.tmp”“alt-002.tmp”等等。我总是看到00在递增的数字之前被删除,因此,例如,001++然后返回2,而不是002 感谢您的帮助,如果这听起来像一个愚蠢的问题,请道歉。将数字格式化为字符串: fileName = string.format("alt-{0:000}.tmp", yourCounterVariable); 字符串格式命令将“{0}”替换为变量

我正在使用C#创建一个小应用程序。我需要以递归的方式命名文件,在创建文件时增加文件名。我需要以下格式的文件名:“alt-001.tmp”“alt-002.tmp”等等。我总是看到00在递增的数字之前被删除,因此,例如,001++然后返回2,而不是002


感谢您的帮助,如果这听起来像一个愚蠢的问题,请道歉。

将数字格式化为字符串:

fileName = string.format("alt-{0:000}.tmp", yourCounterVariable);

字符串格式命令将“{0}”替换为变量。然后,列后面的值是如何格式化替换内容的掩码。

您需要在计数器上创建一个
ToString()
,并使用格式字符串

var a = 0;
(a++).ToString("000").Dump();
(a++).ToString("000").Dump();
这将为您输出3位数字

结果: 001
002

类似于这个棘手的例子

int unique = 0;
string destPath = string.Format("alt-{0:000}.tmp", unique);
while (File.Exists(destPath))
{
     unique++;
     destPath = Path.Combine(easyPath, string.Concat(baseName, " ", unique.ToString("00", CultureInfo.InvariantCulture), file.Extension));
}

一些示例代码和一个玩具示例会很好,这样人们就会看到您的尝试。这会给您带来更多的响应。并非所有人都知道
Dump()
是LinqPadI使用的方法,linqpad用于测试此方法,因此您可以删除.Dump(),并替换为Console.Writeline(…)