Как переименовывать файлы с разными расширениями в цикле

soprano

Client
Регистрация
25.08.2011
Сообщения
814
Благодарностей
874
Баллы
93
Появилась необходимость переименования файла в цикле.
Файлов в папке много, расширения .rar, .zip, .pdf, .jpeg
Я сделал так

C#:
int a = 0;
File.Copy(RandPathFile, RandPathFile + a);//копирую в ту же папку с новым именем
File.Delete(RandPathFile );// удаляем из папки
Но штука в том, что a - цифра добавляется к расширению файла
а надо, чтобы менялось только название, расширение должно сохраняться.
Как правильно сделать?
 
Регистрация
27.09.2019
Сообщения
69
Благодарностей
44
Баллы
18
Как вариант, в отдельные переменные брать директорию, название файла и расширение.
Менять название и склеивать обратно:
C#:
int a = 0;

string dir = Path.GetDirectoryName(RandPathFile);
string filename = Path.GetFileNameWithoutExtension(RandPathFile) + a.ToString();
string ext = Path.GetExtension(RandPathFile);

File.Copy(RandPathFile, Path.Combine(dir, filename + ext));//копирую в ту же папку с новым именем
File.Delete(RandPathFile );// удаляем из папки
 
  • Спасибо
Реакции: soprano и doc

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)