Я пишу приложение. NET Framework (C#). У меня есть каталог, который содержит файлы и папки. Каждая папка имеет номер 3 di git в качестве имени. Я хочу найти имя папки с наибольшим значением.
До сих пор я придумал следующий код:
public void doCopyFiles()
{
string sourceDir = @"C:\Users\xyz\abc\gth";
var sorted = Directory.GetFiles(sourceDir, ".").OrderBy(path => int.Parse(Path.GetFileNameWithoutExtension(path)));
var lastFile = sorted.Last();
Console.WriteLine(lastFile);
}
Однако это вызывает исключение System.FormatException, которое говорит msgstr "строка ввода не в ожидаемом формате". Я предполагаю, что это потому, что есть другие файлы, которые имеют нормальные строки в качестве имени файла.
Есть ли какие-либо предложения о том, как это исправить?
РЕДАКТИРОВАТЬ: После попытки обоих решений, показанных ниже, та же ошибка все еще сохраняется.