Форум программистов, компьютерный форум CyberForum.ru

Адреса директорий (папок), содержащих изображения - Android

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.75
GhostMan
Заблокирован
20.08.2012, 19:17     Адреса директорий (папок), содержащих изображения #1
Здравствуйте!
Как узнать адреса всех директорий, в которых есть картинки? Т.е. как в галереи стандартной, имя папки высвечивается и в ней картинки есть… мне нужно узнать полные адреса этих папок…

P.S..: Пишу с телефона, поэтому не сильно подробно, но надеюсь понятно объяснил проблему…
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
TanT
эволюционирую потихоньку
 Аватар для TanT
464 / 462 / 43
Регистрация: 30.06.2009
Сообщений: 1,399
21.08.2012, 14:37     Адреса директорий (папок), содержащих изображения #2
рекурсивный поиск по каталогам как вариант, ниже пример для поиска mp3, вам нужно будет поменять расширение искомых файлов.
в примере для сохранения используется объект Track, вам нужен скорее всего просто String.

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
/**
     * Find all tracks in source folder
     */
    public List<Track> createMediaLibrary() {
 
        final File home = new File(MEDIA_PATH);
 
        final List<Track> tracks = new ArrayList<Track>();
        listTrack(home, tracks);
        Collections.sort(
            tracks,
            new Comparator<Track>() {
                @Override
                public int compare(final Track lhs, final Track rhs) {
                    return lhs.toString().compareTo(rhs.toString());
                }
            }
        );
        musicTracks = tracks.toArray(new Track[tracks.size()]);
 
        Log.v(TAG, "Find mp3 files " + musicTracks.length);
 
        return tracks ;
    }
 
    /**
     * Find and add track to list
     * @param folder the current folder for search
     * @param tracks the storage of tracks
     */
    private void listTrack(final File folder, final List<Track> tracks) {
        for (final File file : folder.listFiles()) {
            if (file.isDirectory()) {
                listTrack(file, tracks);
            } else if (file.getName().endsWith(".mp3")) {
                tracks.add(new Track(file));
            }
        }
    }
GhostMan
Заблокирован
24.08.2012, 01:38  [ТС]     Адреса директорий (папок), содержащих изображения #3
Цитата Сообщение от TanT Посмотреть сообщение
рекурсивный поиск по каталогам как вариант, ниже пример для поиска mp3, вам нужно будет поменять расширение искомых файлов.
в примере для сохранения используется объект Track, вам нужен скорее всего просто String.
Извините, я не очень понял данный код...Есть ли какие-либо статьи, где можно почитать о рекурсивном поиске файлов в Android OS? (а то в google.com ничего не нашел по этой теме)

Заранее спасибо!
V0v1k
1157 / 981 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
24.08.2012, 02:16     Адреса директорий (папок), содержащих изображения #4
Цитата Сообщение от GhostMan Посмотреть сообщение
где можно почитать о рекурсивном поиске файлов в Android OS
причем здесь андроид, Джаву учи, элементарный джава код не привязаный к андроиду....

Добавлено через 10 минут
для такой элементарщины статьи не пишу, на первом курсе такие проги на сишке писали...
TanT
эволюционирую потихоньку
 Аватар для TanT
464 / 462 / 43
Регистрация: 30.06.2009
Сообщений: 1,399
24.08.2012, 06:50     Адреса директорий (папок), содержащих изображения #5
GhostMan, попробую объяснить

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
/**
     * Рекурсивный поиск фалов в директории
     */
    public List<String> createMediaLibrary() {
 
       // корневой каталог
        final File home = new File(путь до корневого каталога);
 
       // создаём список для хранения найденных путей к файлам
        final List<String> files= new ArrayList<String>();
        // рекурсивно ищём файлы
        searchFile(home, files);      
 
        return files;
    }
 
    /**
     * рекурсивно ищём файлы
     * @param folder the текущая папка в которой происходит поиск
     * @param files the список для хранения найденных путей к файлам
     */
    private void searchFile(final File folder, final List<String> files) {
        
        // перебираем все элементы в директории, там могут быть и файлы и директории               
            for (final File file : folder.listFiles()) {
            // если элемент директория, то вызываем наш метод поиска для этой директории,
           // собсвенно это и вся рекурсия
            if (file.isDirectory()) {
                searchFile(file, files);             
            }
              // если элемент файл заносим данные в список
               else if (file.getName().endsWith("твоё расширения файла png, jpg")) {
                tracks.add(file.getAbsolutePath());
            }
        }
    }
GhostMan
Заблокирован
24.08.2012, 10:20  [ТС]     Адреса директорий (папок), содержащих изображения #6
Цитата Сообщение от V0v1k Посмотреть сообщение
причем здесь андроид, Джаву учи, элементарный джава код не привязаный к андроиду....

Добавлено через 10 минут
для такой элементарщины статьи не пишу, на первом курсе такие проги на сишке писали...
Слушай, я на C/C++ тоже знаю, как это сделать, а java только учу...И хоть они и похожи разница все же есть и существенная.
Да... и меня не учили этому в универе, я только пойду на 1 курс.
И твои статьи мне тож не нужны, я лишь спросил, где можно почитать за это...
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.08.2012, 17:07     Адреса директорий (папок), содержащих изображения
Еще ссылки по теме:

Передача адреса изображения для ViewImage Android
Android Поле ввода адреса с динамическим выводом подсказки
Как достать из телефонной книги адреса чатов, адреса проживания и сайты Android
Код получения MAC адреса wifi на android 6 Android
Android Автодополнение адреса

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
GhostMan
Заблокирован
24.08.2012, 17:07  [ТС]     Адреса директорий (папок), содержащих изображения #7
Цитата Сообщение от TanT Посмотреть сообщение
GhostMan, попробую объяснить
Большое спасибо Вам за подробный ответ - вроде все ясно)
Yandex
Объявления
24.08.2012, 17:07     Адреса директорий (папок), содержащих изображения
Ответ Создать тему
Опции темы

Текущее время: 08:13. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru