Форум » [x]Harbour » Directory() » Ответить
Directory()
Dima: Существует ли аналог ,но так что бы маску указывать в виде массива ? Directory({"*.bmp","*.jpg}")
Ответов - 11
Haz: Dima пишет: Directory({"*.bmp","*.jpg}") Дима, вроде такого нет . Но там дел на 4 строки Func Directory_mask( aMask ) local aDir := {} aEval( aMask, { |e| aMerge( aDir, Directory(e)) } ) Return aDir
Dima: Упс , не знал от такой функции Amerge. Спасибо Игорь !
Andrey: Dima пишет: Упс , не знал от такой функции Amerge. Спасибо Игорь ! Присоединяюсь !!!
Dima: В папке лежат файлы вида 345_FRAME_0001.JPG 345_FRAME_0002.JPG 345_FRAME_0003.JPG 345_FRAME_0004.JPG 345_FRAME_0005.JPG 345_FRAME_0006.JPG При считывании списка файлов с помощью Directory() , они попадут в массив в том же порядке ? Пока попадает в том же (так мне и надо). Видимо массив как то сортируется или нет ?
SergKis: Dima пишет:Пока попадает в том же (так мне и надо) не стоит на это расчитывать, надо сортировать самому.
Dima: SergKis пишет: не стоит на это расчитывать, надо сортировать самому. Это я понимаю. Просто уже интересно в каком порядке заполняется массив. Если отсортирован по именам изначально тогда и последующий Asort не нужен.
Haz: SergKis верно пишет: не стоит на это расчитывать нет там сортировки используются вызовы ffirst и fnext , то что порядок устраивает это до поры. Какой нить дефраг диска теоретически может это нарушить
Dima: Понял. Спасибо.
Haz: Haz пишет: каком порядке заполняется массив. заполняется в порядке физического нахождения нужного имени файла по маске и не сортируется точно. основа Directory() - это вызов hb_fsDirectory() и там нет сорта
SergKis: Dima пишет: Directory({"*.bmp","*.jpg}") советую усилить маску (со временем, что нибудь чужое залезет в список), например: ???_FRAME_????.JPG или 3???_F???E_0???.JPG
Dima: SergKis Согласен , хотя папка и моя и только моя прога туда пишет , но береженого бог бережет. Так и сделаю.
полная версия страницы