Показать сообщение отдельно
Старый 14.12.2011, 19:34
HardCoder вне форума Посмотреть профиль Отправить личное сообщение для HardCoder Найти все сообщения от HardCoder
  № 1  
Ответить с цитированием
HardCoder
 
Аватар для HardCoder

блогер
Регистрация: Apr 2011
Сообщений: 583
Записей в блоге: 2
По умолчанию AIR. Как открыть несколько папок с файлами?

Здравствуйте. Делал как-то мп3 плеер. Есть каталог "Музыка" (5Гб). В нем каталоги: "Поп", "Рок", "Рэп" и пр. в которых разные каталоги и файлы мп3. И встала задача: Окрыть эту папку "Музыка" и поместить ее в плей-лист. Такое мне не удалось реализовать, поэтому обошелся банальным browseForOpenMultiple() и перетаскиванием одного или нескольких файлов с помощью NativeDragManager. Но месяц спустя мне стало интересно можно ли все-таки такое сделать? Ведь даже в том же Windows Media Player я могу перетянуть целые папки, программа отфильтрирует медиа - файлы и вставит их в плей лист.
Вот ход моих мыслей: С помощью browseForDirectory выбираем нужную нам папку. Или с помощью NativeDragManager перетаскиваем нужную папку из проводника. В первом и втором случае мы будем иметь обьект File ссылающийся на эту папку. Теперь ступор! Как отфильтрировать эту папку, чтобы в приложение поступили только мп3 файлы? Проверять каждый подкаталог - является ли он каталогом, потом проверять каждый файл в нем, является ли он мп3, потом переходить к другой папке и т.д. это бред. Если вложенность каталогов будет хотя бы 20, то эйр на таком цикле просто вылетит. Какие у Вас, господа мысли по этому поводу? Или есть где-то встроенные методы, которые я просто пропустил?
__________________
Я мало чего умею, но зато хорошо умею учиться...