2014-09-05 2 views
2

Моя проблема заключается в том, что у меня есть несколько каталогов, которые я должен программно программировать на Java. Все эти каталоги имеют одинаковый рисунок:Устранение абсолютных путей с помощью подстановочных знаков в Java 6

d:\a\b\c\??_????\d\ 

Я не могу найти способ сделать это с умом. Для любого FileFilter (я использую WildcardFileFilter) вам понадобится базовый каталог, который будет работать только с listFiles(), но в моем случае нет базового каталога, так как мои пути являются абсолютными. Я безуспешно пробовал несколько трюков из Интернета, а затем я застрял. Ваша помощь будет принята с благодарностью. enter link description here

+0

У вас есть абсолютный путь для каждого отдельного каталога? – ItachiUchiha

+0

Прошу прощения, что я не понимаю ваш вопрос. Все каталоги, которые меня интересуют, имеют один и тот же шаблон, поэтому все они абсолютные, да. Это ваш вопрос? – Erwann

ответ

0

Попробуйте использовать listFilesAndDirs, указывающие на корневую папку или на d: \ a \ b \ c.

+0

Я думал об этом, но для этого мне пришлось бы разбирать строку пути, чтобы определить, где начинается эта часть глобуса. Это звучало довольно раздражающе для меня, и мне было интересно, существует ли более разумный способ. Это для опции «d: \ a \ b \ c». Вы тоже говорите о корневой папке: мне это нравится. Как получить корневую папку? – Erwann

+0

Я думаю, что '/' работает для всех операционных систем теперь mac, linux и win> = win7, но я не уверен. –

+0

Нет, я уже пробовал. После кода 'FileFilter fileFilter = new WildcardFileFilter (" d:/a/b/c/?? _ ????/d/"); \t \t \t Файл [] files = new Файл ("/"). ListFiles (fileFilter); 'запущен,' files' пуст, даже если каталоги существуют. – Erwann

Смежные вопросы