C #: Как бы вы сделали уникальное имя файла, добавив число?
Я хотел бы создать метод, который принимает либо имя файла в качествеstring
илиFileInfo
и добавляет увеличенное число к имени файла, если файл существует. Но я не могу понять, как сделать это хорошим способом.
Например, если у меня есть этот FileInfo
var file = new FileInfo(@"C:\file.ext");
Я хотел бы, чтобы метод дал мне новый FileInfo сC:\file 1.ext еслиC:\file.ext существовал, иC:\file 2.ext еслиC:\file 1.ext существовал и так далее. Что-то вроде этого:
public FileInfo MakeUnique(FileInfo fileInfo)
{
if(fileInfo == null)
throw new ArgumentNullException("fileInfo");
if(!fileInfo.Exists)
return fileInfo;
// Somehow construct new filename from the one we have, test it,
// then do it again if necessary.
}