Штатными средствами, грубо говоря - никак. Можно посмотреть в исходники, как там readdir организован и допилить, но это боль, подозреваю.
в JS дать доступ к файловой системе... Да! куда катится мир... хорошо, что в JS нет доступа к ядерной кнопке!
По чтению-записи на SD-карту вопрос. В скетче подключены библиотеки #include <SD.h> #include <SPI.h> Обнаружено, что при помощи myFile = SD.open("123456789.txt", FILE_WRITE); Я не могу создать файл с именем больше 8 символов. "12345678.txt" создаётся, а "123456789.txt" -- нет. Существуют-ли способы обхода этого препятствия?
Похоже эта библиотека рассчитана на устаревший формат... с поддержанием 8 символов в имени и 3 символа в расширении (в этом документе описано про расширение имён в каталоге): fatgen103-rus.doc.zip Потому как изначально по стандарту всего 11 символов на всё - смотрите Page 27. Для расширенного имени в каталоге потребуется дополнительные записи (Page 29): Отметим, что комбинация атрибутов ATTR_LONG_NAME означает, что “файл” является лишь частью длинного имени другого файла. Описание этой комбинации атрибутов дано в следующем параграфе. Смотрите Page 31, где показана форма для размещения в записи каталога длинного имени. Следует учесть, что для длинного имени требуется более одной записи. По стандарту (старому) одна запись - один файл. Короче одна запись в каталоге FAT требует 32 байта. Для имени больще 11 символов вместе с расширением требуется более одной записи в каталоге на один файл. Запись это: Имя с расширением; Размер; Атрибуты; Время создания, изменения и т.д.; Номер первого кластера данных в таблице FAT и т.д. Похоже это экономия (в библиотеке) для упрощения, ведь для записи длинного имени уже в ОЗУ от 64 байт и более (в зависимости от длины имени в байтах).