Головна сторінка
Top.Mail.Ru Яндекс.Метрика
Форум: "Початківцям";
Поточний архів: 2019.03.10;
Завантажити: [xml.tar.bz2];

Вниз

Визначити шлях до файлу (TSearchRec) Знайти схожі гілки


Иван   (2016-11-04 23:25) [0]

Вітаю!
Используя FindFirst и FindNext ищу необходимые мне файлы и заношу результат в массив типа TSearchRec. Как я могу узнать путь к файлу, который в данный момент проверяется на соответствие к заданным в FindFirst критериям?
То есть я имею цикл while, в котором найденный файл заносится в массив. Как узнать путь данного файла?
while (FindNext(gotFile)) = 0 do
begin
   inc(countOfFiles);
   inc(iterator);
   arrOfFiles[iterator] := gotFile;
   findSameFiles(arrOfFiles[iterator], arrOfFiles);
end;



kilkennycat ©   (2016-11-05 01:22) [1]


> который в данный момент проверяется на соответствие к заданным в FindFirst критериям

ну, если формулировка правильная, то никак. FindNext не заполняет TSearchRec в случае несоответствию шаблону. Как вариант, решение может быть  следующим: задать шаблон *.* чтобы получать результат по всем файлам, а обработку на соответствие нужному шаблону делать вручную.



Dimka Maslov ©   (2016-11-05 11:37) [2]


> Как вариант


Вроде как единственный. Получил все файлы, а потом хоть регэкспы к именам применяй. Вся хитрость заключается в отделении папок от файлов.



iop ©   (2016-11-05 12:35) [3]

вы нифига не поняли

у него после поиска остается массив tsearchrec
в котором имена без путей.
а ему хочется абсолютный путь до файлов.
ну или относительный



Иван   (2016-11-05 12:49) [4]

"Iop" правильно зрозумів суть завдання.



Внук ©   (2016-11-05 17:38) [5]

А хіба в параметрі FindFirst не ставить каталог пошуку? Що ще потрібно?



sniknik ©   (2016-11-05 23:25) [6]

> "iop" правильно понял суть задачи.
если хочется полный путь оттуда где его нет, то задача неразрешима, если же просто нужен полный путь, то следует поменять условие. ваш кэп.



Иван   (2016-11-06 01:27) [7]

Вирішив проблему шляхом використання методу "ExpandFileName (fileName: string)"



Германн ©   (2016-11-06 03:11) [8]

вилучено модератором
Примітка: Створення порожніх повідомлень



Inovet ©   (2016-11-06 03:22) [9]

вилучено модератором
Примітка: Створення порожніх повідомлень



sniknik ©   (2016-11-07 08:10) [10]

вилучено модератором
Примітка: Нарушение правил конференции



сторінки: 1 вся гілка

Форум: "Початківцям";
Поточний архів: 2019.03.10;
Завантажити: [xml.tar.bz2];

наверх









Пам'ять: 0.58 MB
Час: 0.013 c
1-1360856114
брат
2013-02-14 19:35
2019.03.10
Перекласти з C ++


2-1478620871
хтось
2016-11-08 19:01
2019.03.10
StringGrid.Objects


1-1358834250
DevilDevil
2013-01-22 09:57
2019.03.10
Сплеш вікно, MainWindow


4-1268219090
Maksim V.
2010-03-10 14:04
2019.03.10
Стиль меню під Vista і 7


2-1477614402
Artem78
2016-10-28 03:26
2019.03.10
Отримати адресу потоку відео з Youtube





африкаанс албанський арабська вірменин азербайджанець баскський білоруський болгарська каталонський Китайська (спрощене письмо) Китайський традиційний) хорватський чеська данську мову нідерландський Ukranian естонець Філіппінська фінську мову французький
галісійська грузинський німецький грецький гаїтянський креольський давньоєврейську хінді угорський ісландський індонезієць ірландський італійський японський корейський латиська литовець македонець малайський мальтійський норвежець
перс полірування португальська румунський російська сербський словацький словенський іспанська суахілі шведську мову тайський турецька український урду в'єтнамський валлійський ідиш бенгальський боснійський
кебуано есперанто гуджараті хауса хмонг ігбо яванський каннада кхмерская Лао латинь маорі маратхі монгольський непальська панджабі сомалійський тамільська телугу йоруба
зулуський
Англійська Французький Німецький Італійський Португальська Русский Іспанська