Я создаю приложение с использованием C# 2010, целью которого является копирование файлов с указанным расширением. Он использует .NET Framework 3.5.Directory.CreateDirectory не работает
я следующий кусок кода:
private void GetFiles()
{
bool validext;
foreach (string filePath in Directory.GetFiles(SourcePath, "*.*", SearchOption.AllDirectories))
{
//Check if the file has a specified extension
validext = false;
foreach (string extension in ext)
if (HasExtension(filePath, extension))
{
validext = true;
break;
}
if ((validext && mode == 1) || (!validext && mode == 2))
{
Directory.CreateDirectory(Path.GetDirectoryName(filePath));
to_copy.Add(filePath);
}
}
totalcount = to_copy.Count;
}
Проблема заключается в этой команде:
Directory.CreateDirectory(TrimFile(filePath));
Это не вызывает каких-либо исключений, путь к каталогу, она должна создавать корректен и приложение работает с правами администратора. Тем не менее, каталог не создается. Поиск в Интернете не дал мне ответов, так что мой вопрос:
Почему Directory.CreateDirectory(TrimFile(filePath));
не работает?
EDIT: Я заменил функцию FileTrim на Path.GetDirectoryName(filePath)
.
Можете ли вы разместить вывод 'TrimFile (filePath)' пожалуйста. –
Какова цель TrimFile? Можете ли вы показать нам, что содержимое строки пути было до и после прохождения TrimFile? Я бы предположил, что вот где ваша проблема лежит –
См. Здесь: http://stackoverflow.com/questions/888228/why-is-io-directory-createdirectory-succeeding-when-it-shouldnt –