Почему я получаю эту ошибку? Я использую правильный путь.Недопустимое имя каталога
ответ
Проблема: Вы обеспечиваете Путь File
Решение: Вам нужно указать путь Directory
, чтобы получить все файлы в данной Directory
на основе вашего шаблона поиска ,
Из MSDN: Directory.GetFiles()
Возвращает имена файлов (в том числе их пути), которые соответствуют заданному шаблону поиска в указанном каталоге.
Попробуйте это:
string directoryName = Path.GetDirectoryName(e.FullPath);
foreach(String filename in Directory.GetFiles(directoryName,"*.eps"))
{
//your code here
}
Вы хотите каталог, а не имя файла.
В настоящий момент значение e.FullPath
составляет "C:\\DigitalAssets\\LP_10698.eps"
. Он должен быть "C:\\DigitalAssets"
.
string[] fileNames = Directory.GetFiles(string path)
требуется каталог, вы предоставляете ему каталог + имя файла.
MSDN:
Возвращает имена файлов (в том числе их путей), которые соответствуют указанному шаблону поиска в указанном каталоге.
foreach(string filename in Directory.GetFiles(e.FullPath, "*.eps"))
{
// For this to work, e.FullPath needs to be a directory, not a file.
}
Вы можете использовать Path.GetDirectoryName():
foreach(string filename in Directory.GetFiles(Path.GetDirectoryName(e.FullPath), "*.eps"))
{
// Path.GetDirectoryName gets the path as you need
}
Вы можете создать метод:
public string GetFilesInSameFolderAs(string filename)
{
return Directory.GetFiles(Path.GetDirectoryName(filename), Path.GetExtension(filename));
}
foreach(string filename in GetFilesInSameFolderAs(e.FullPath))
{
// do something with files.
}
Спасибо за ответ. Это также правильно, но потому, что @sudhakar ответил первым, поэтому я просто поддержал это. –
Directory.GetFiles
используется для получения имен файлов из определенного каталога. Вы пытаетесь получить файлы из имени файла, который недействителен, так как он дает вам ошибку. Укажите имя каталога для функции вместо имени файла.
Вы можете попробовать
Directory.GetFiles(System.IO.Path.GetDirectoryName(e.FullPath),"*.eps")
e.FullPath
кажется файл, а не каталог. Если вы хотите перечислить файлы * .eps, первый аргумент GetFiles должен быть путь к каталогу: @"C:\DigitalAssets"
первый аргумент GetFiles должен быть только «C: \ DigitalAssets» e.FullPath включают имя файла в нем ,
- 1. 550 Недопустимое имя каталога
- 2. Path.GetTempFileName - Недопустимое имя каталога
- 3. Ответы TPath.GetTempFileName «Недопустимое имя каталога»
- 4. values - недопустимое имя каталога ресурса
- 5. Почему олицетворение процесса возвращает «Недопустимое имя каталога»?
- 6. Недопустимое имя каталога ресурсов в android
- 7. Ошибка Недопустимое имя каталога ресурса: «res content»
- 8. андроид -notlong затмение: "Недопустимое имя каталога ресурса"
- 9. GetDiskFreeSpaceEx с NULL Недопустимое имя каталога
- 10. drawable-land-xhdpi = недопустимое имя каталога ресурсов?
- 11. Сообщение Pylint: недопустимое имя константы (недопустимое имя)
- 12. Недопустимое имя каталога ресурса: C: \ AndroidAppser \ ACTSelfCare \ res layouxxhdpi
- 13. PHP PDO: Не удается подключиться, Недопустимое имя каталога
- 14. недопустимое имя каталога ресурса: E: \ рабочее место \ ......... \ рес red.png
- 15. Ошибка «Недопустимое имя каталога» из настраиваемого определения сборки TFS
- 16. генерирование файла R.java из командной строки «недопустимое имя каталога ресурса»
- 17. Недопустимое имя каталога, используемое в свойстве «CurrentDirectory» vbscript
- 18. Необработанное исключение типа «System.IO.IOException» произошло в mscorlib.dll Недопустимое имя каталога
- 19. Недопустимое имя каталога ресурсов для значений с кодом страны
- 20. Недопустимое имя столбца 'User_User_Id'. Недопустимое имя столбца 'Group_Group_Id'. EF6 Exception
- 21. SQL - Java: Недопустимое имя столбца: Недопустимое имя столбца
- 22. SQL-сервер Недопустимое имя столбца Недопустимое имя объекта
- 23. недопустимое имя объекта "CAccounts"
- 24. OpenCL Недопустимое имя ядра
- 25. Sys.WebForms.PageRequestManagerServerErrorException: Недопустимое имя столбца:
- 26. Недопустимое имя столбца 'QuestionGroup_QuestionGroupID'
- 27. Недопустимое имя объекта 'tbl_Shading_Analysis'.?
- 28. Emacs `Недопустимое имя шрифта`
- 29. недопустимое имя объекта «dbo.stream»
- 30. Недопустимое имя столбца «USER_SOURCE»
Работал как очарование! Благодаря! –
Добро пожаловать :) Я рад помочь вам. –