Как переименовать файлы в неизвестном каталоге с помощью C#
Я хочу переименовать файл с определенным расширением в папке. Например, C:\Users\ Имя пользователя \Desktop\Convert - это расположение файла, в котором я нахожусь. Есть еще одна папка, например "C:\Users\ Имя пользователя \Desktop\Convert\Unknown folder". Я не буду знать имя этой неизвестной папки. В этой неизвестной папке будет файл.txt. Так как мне получить доступ к неизвестной папке и изменить расширение файла.txt на.jpg?
Это то, что я пытался, и это не работает:
string ourPath = @"C:\Users\username\Desktop\Convert\123.txt";
string newPath = Path.ChangeExtension(ourPath, "jpg");
File.Move(ourPath, newPath);
}
1 ответ
Получить все файлы в папках-потомках, используя SearchOption.AllDirectories
затем найдите свой файл и делайте что хотите:
var files = Diretory.GetFiles(
@"C:\Users\Username\Desktop\Convert",
"*.txt",
SearchOption.AllDirectories);
var filePath = files.FirstOrDefault(f => Path.GetFileName(f) == "123.txt");
if(filePath != null)
{
// manipulate the file ext. etc..
}