Форум программистов, компьютерный форум, киберфорум
Микроконтроллеры ARM, Cortex, STM32
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.83/58: Рейтинг темы: голосов - 58, средняя оценка - 4.83
0 / 0 / 0
Регистрация: 24.11.2013
Сообщений: 195

файловый менеджер

21.01.2014, 11:03. Показов 12156. Ответов 35
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Задача. Отрисовка содержания карты памяти на экранчике.
Может есть готовый у кого ? подскажите где почитать про это дело
спасибо
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
21.01.2014, 11:03
Ответы с готовыми решениями:

Файловый менеджер с БД
Здраствуйте! Вопрос к тем, кто смог бы Аргументированно объяснить свою точку зрения по поводу создания файлового менеджера в Delphi с базой...

Файловый менеджер
public class Main extends AppCompatActivity { ListView lv; File curDir; File files; Button quit; ...

Файловый менеджер
Есть файловый менеджер , не получается реализовать 2 оставшиеся кнопки . "Копировать" , "Вставить" . Подскажите...

35
1 / 1 / 0
Регистрация: 11.01.2013
Сообщений: 5,479
21.01.2014, 14:01
А сама SD-карта у Вас уже работает, и только обход дерева файловой системы осталось прикрутить?

В любом случае - "Поиск" по форуму. Готовых и полуготовых решений найдёте много. В том числе для STM32.
0
0 / 0 / 0
Регистрация: 24.11.2013
Сообщений: 195
21.01.2014, 14:44
да сама карта работает. только отображение.
и понять как происходит сопоставление полученных координат от тача с тем файлом на который нажали

Научите что в поиске написать. Я что то не смог найти по этой теме.
0
1 / 1 / 0
Регистрация: 05.10.2017
Сообщений: 2,048
21.01.2014, 14:57
поищите, тут где-то был проект мп3 плеера c экраном, тачем, списком файлов. не так давно мелькал.
0
0 / 0 / 0
Регистрация: 24.11.2013
Сообщений: 195
21.01.2014, 16:20
только вот это нашел. Уже неплохо )
Интересно сколько будет полностью забитая флешка сканится и какой ей нужен размер массива для хранения имен файлов
0
1 / 1 / 0
Регистрация: 11.01.2013
Сообщений: 5,479
21.01.2014, 16:54
Цитата Сообщение от r0skit
Интересно сколько будет полностью забитая флешка сканится
Что значит "полностью забитая"? Вы же понимаете, что время полного обхода дерева файловой системы будет зависеть не от "забитости" флэшки (у которой Вы даже размер не указываете), а только от количества файлов и директорий на ней. Если сотни файлов - это довольно быстро сканируется. Если миллион - такое технически возможно, но я не проверял.

Цитата Сообщение от r0skit
и какой ей нужен размер массива для хранения имен файлов
Тоже риторический какой-то вопрос. (Сколько файлов) * (длина имени файла) = (столько памяти на хранение всех имён).
Это будет довольно большой объём, учитывая длину имён до 256-ти Unicode символов (по два байта каждый). Я в той теме уже говорил: кАк можно хранить информацию о найденных файлах с малым расходом ОЗУ.
0
0 / 0 / 0
Регистрация: 04.03.2011
Сообщений: 594
21.01.2014, 17:39
плеер#p310855
Камрад Оксфорд делал.
0
0 / 0 / 0
Регистрация: 24.11.2013
Сообщений: 195
22.01.2014, 11:03
Цитата Сообщение от OtyxPM
Я в той теме уже говорил: кАк можно хранить информацию о найденных файлах с малым расходом ОЗУ.
" Пока на флэшке не делалась запись (только чтение), каждый файл уникально адресуется смещением его directory recordа. Для флэшек до 2 Гбайт включительно это 32-хбитное число, и его Вы уже сейчас нахОдите, когда subj алгоритм делает поиск всех нужных файлов.

Для флэшек 4 Гбайта и выше к адресу добавится ещё один байт.

Пример: записи об mp3-файлах находятся на флэшке по адресам 0x00012300, 0x00012320, 0x00012340, 0x00012F00, 0x00056780, ... ..."

Непонятно как в Fatfs засунуть адрес в таком виде что бы fatfs понимало о каком файле речь.
И как выделить этот адрес при сканировании всего диска.
0
1 / 1 / 0
Регистрация: 11.01.2013
Сообщений: 5,479
22.01.2014, 11:39
Цитата Сообщение от r0skit
Непонятно как в Fatfs засунуть адрес в таком виде что бы fatfs понимало о каком файле речь.
В готовый проект FatFs, позаимствованный у дядюшки Чена - может быть, и никак. Ну не расчитывал Чен на такое применение с экономией ОЗУ :-)
А в своём проекте или в соответственно модифицированном FatFs (не знаю: как там с лицензией) - можно сделать.
0
0 / 0 / 0
Регистрация: 24.11.2013
Сообщений: 195
22.01.2014, 12:40
https://nagits.wordpress.com/2010/10/18/avr_sd/
вот расписано как вывести все в терминал. (вдруг кто нибудь тоже ищет)
0
3 / 3 / 0
Регистрация: 06.12.2016
Сообщений: 1,605
22.01.2014, 12:43
r0skit, первое: "файловый менеджер" - это продукт, позволяющий копировать, удалять файлы и прочее. Зачем Вам оно?
Вам надо просто окно выбора файлов. Я реализовал такое на STemWin c поддержкой 3-х накопителей (легко прикритутить и 10, больше FatFs не понимает). Работает нормально вроде. Там есть и стандартное, но оно меня не устроило по ряду причин. Могу сказать почему.
Но STemWin - вещь, хорошо жрущая ROM. Я не могу сказать, пойдёт ли он непонятно на каком STM32 c неизвестным объёмом ROM. У меня - STM32F4, библиотеке выделил 64 кила памяти.

Второе - зачем Вам сканировать весь каталог? Ради чего? Ради выбора одной mp3-шки или bmp-шки? Это блажь ненужная...
Я перепробовал кучк разных вариантов, остановился на списке. Сменили каталог - все элементы списка удалили, заполнили по-новой. Очень эффективно. Не в пример дереву, где надо держать все узлы в памяти, даже если они никому на фиг не нужны ....
Более того, если Вы делаете, например, mp3 плеер, Вы можете отображать в Вашем интерфейсе только *.mp3. Потому как Word-овские или экселовские документы плееру тоже на фиг не нужны. Зачем занимать драгоценную память этим мусором?

Третье - что такое "записи об mp3-файлах находятся на флэшке по адресам 0x00012300, 0x00012320, 0x00012340, 0x00012F00, 0x00056780, ... ..."? Это номера секторов? Кластеров? Какие-то номера, какие-то Вы сами придумали? А если я воткну другую флэшку с какими-то другими кластерами и другими файлами? Бред короче.
Единственно верный способ идентификации файла - его путь от корня накопителя, что FatFs и делает.
А если хотите использовать что-то своё и оригинальное - пишите свой аналог FatFs. Либо ковыряйтесь в кишках FatFs и добавляйте туда эти возможности.
Я, например, сделал для себя более корректное чтение метки тома. Ченовский вариант не всегда работает.
Сканировать всё дерево каталогов - тоже легко. Ставите проц типа STM32F439, вешаете на него 8MБ SDROM - и сканируйте себе на здоровье, как душе будет угодно :) .

Определитесь, что и для чего Вам нужно.
0
1 / 1 / 0
Регистрация: 11.01.2013
Сообщений: 5,479
22.01.2014, 13:44
Цитата Сообщение от hd44780
Второе - зачем Вам сканировать весь каталог? Ради чего? Ради выбора одной mp3-шки или bmp-шки? Это блажь ненужная...
Я перепробовал кучк разных вариантов, остановился на списке. Сменили каталог - все элементы списка удалили, заполнили по-новой. Очень эффективно.
+1.
Только в первой фразе опечатка (уверен). Надо было: "... зачем Вам сканировать весь диск? ...".
Действительно, большинство реализаций плейеров создают и показывают пользователю список файлов только текущего директория. Зачем больше? Из текущего директория можно перейти как в поддиректорий, так и в родительский директорий - в любом случае пересканируется только директорий и обновляется только его список, а он относительно небольшой.

Цитата Сообщение от hd44780
Третье - что такое "записи об mp3-файлах находятся на флэшке по адресам 0x00012300, 0x00012320, 0x00012340, 0x00012F00, 0x00056780, ... ..."? Это номера секторов? Кластеров? Какие-то номера, какие-то Вы сами придумали? А если я воткну другую флэшку с какими-то другими кластерами и другими файлами? Бред короче.
Единственно верный способ идентификации файла - его путь от корня накопителя, что FatFs и делает.
А если хотите использовать что-то своё и оригинальное - пишите свой аналог FatFs. Либо ковыряйтесь в кишках FatFs и добавляйте туда эти возможности.
Вот ведь r0skit меня подставил! Вырвал из контекста другой темы мои объяснения и не пометил, что это цитата :-(
hd44780, если (а вдруг) Вам правда понадобится узнать, почему эти адреса не бред, а удобное решение для тонкого клиента - пишите мне в личку. Хотя, думаю, Вам достаточно будет просто в процитированную тему заглянуть.
0
0 / 0 / 0
Регистрация: 24.11.2013
Сообщений: 195
22.01.2014, 13:55
1) Про STemWin почитаю. Спасибо
2) Сканировать весь каталог - для того что бы найти все mp3. Кто знает где она может оказаться.

Я планирую такой алгоритм -
Перед началом работы сканировать весь каталог, выделять нужный тип файлов (mp3 wav и тд).
Записывать все найденные пути в файл на карту памяти (списком).
Затем считывать путь и имя из этого файла и кидать его в FAtfs.

Использую STM32F4.

Извиняюсь что подставил. Не умею указывать цитату если из другой вкладки вставляю
0
1 / 1 / 0
Регистрация: 11.01.2013
Сообщений: 5,479
22.01.2014, 14:22
Цитата Сообщение от r0skit
Не умею указывать цитату если из другой вкладки вставляю
Code
1
Тэг [quote="имя цитируемого источника"]цитируемый текст[/quote]
0
3 / 3 / 0
Регистрация: 06.12.2016
Сообщений: 1,605
22.01.2014, 14:58
Забыл ответить - STemWin сам скажет, на каком элементе списка ткнули тачем. Вам и думать об этом не надо.
0
0 / 0 / 0
Регистрация: 24.11.2013
Сообщений: 195
22.01.2014, 15:14
2) Сканировать весь каталог - для того что бы найти все mp3. Кто знает где она может оказаться.
а вот это прокомментируйте пожалуйста.

Вы предлагаете сканировать только папку? А как тогда показать полный список файлов одного типа на карточке?

Обычный мп3 плеер играет сразу все файлы которые есть на карточке (можно выбрать режим играть папку, но и весь список всегда есть)
0
0 / 0 / 0
Регистрация: 24.11.2013
Сообщений: 195
22.01.2014, 15:16
Цитата Сообщение от OtyxPM
Цитата Сообщение от r0skit
Не умею указывать цитату если из другой вкладки вставляю
Code
1
Тэг [quote="имя цитируемого источника"]цитируемый текст[/quote]
спасибо
0
0 / 0 / 0
Регистрация: 21.11.2012
Сообщений: 1,400
22.01.2014, 16:10
О, меня тоже заинтересовала тема. Пока - только для отображения.
Вопроса два: 1) не понадобится ли допаивать внешнюю оперативку, чтобы строить и сортировать список файлов текущей директории (предположим, что больше десятка тысяч файлов в директории не будет)? 2) а как там с алгоритмами сортировки под STM32? Классические способы либо жутко тормозные (пузырек какой-нибудь), либо жутко жрущие память (всякие сортировки Шелла).
0
1 / 1 / 0
Регистрация: 11.01.2013
Сообщений: 5,479
22.01.2014, 16:57
Цитата Сообщение от Iddy_Im
1) не понадобится ли допаивать внешнюю оперативку, чтобы строить и сортировать список файлов текущей директории (предположим, что больше десятка тысяч файлов в директории не будет)?
2) а как там с алгоритмами сортировки под STM32? Классические способы либо жутко тормозные (пузырек какой-нибудь), либо жутко жрущие память (всякие сортировки Шелла).
1) FAT, думаю, не даст в один директорий десять тысяч файлов сложить (по карйней мере, на Root directory есть ограничение). Но если получится - значит, считайте максимальный размер массива строк с путями - тривиальную формулу я выше давал.

2) Для сортировки ничего специального imho нет. Те же алгоритмы, что и везде. Ну и, естественно, для скорости сортируйте индексы массива, а не перемещайте сами строки.
0
0 / 0 / 0
Регистрация: 21.11.2012
Сообщений: 1,400
22.01.2014, 17:37
FAT, думаю, не даст в один директорий десять тысяч файлов сложить
В планах - ext2 использовать, VFAT — говно, которое только для мегабайтных жестких дисков годилось... А поначалу вообще не вижу смысла пользоваться ФС: всякие параметры можно напрямую писать, считая всю неформатированную флешку одним большим файлом. В принципе, можно и псевдо-ФС сделать, если понадобится, и для ПК какой-нибудь элементарный ФМ сделать.
Для сортировки ничего специального imho нет.
Нужно будет поискать. Все-таки, МК не настолько богат на оперативку, чтобы сортировать кучу записей. Поэтому дешевые mp3-плейеры нифига и не сортируют содержимое флешки: тупо играют в порядке следования inodeов в содержимом директории.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
22.01.2014, 17:37
Помогаю со студенческими работами здесь

Файловый менеджер
Так и не нашла где создать тему, нужны исходники чего-то вроде файлового менеджера на VB6, к сожалению VBbook и planet-source отошли в мир...

Файловый Менеджер
Файловый Менеджер. Уважаемые форумчане буду премного благодарен. Распишите в модуле комментарии к функциям и методам.unit frFilePanelU; ...

файловый менеджер
Прошу дать информацию на работу с файлами (статьи, книги) в срр, точнее необходимо сделать что-то вроде файлового менеджера с функциями...

Файловый менеджер.
Здравствуй те программисты. вот в чем проблема, в институте нам дали задания дописать код программы 3 функциями, такие как "...

Файловый менеджер
Доброго времени суток.Прошу помощи с программкой,мне нужно написать простенький файловый менеджер,решил сделать через вкладку Samples,для...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru