![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Поиск файлов [D6, WinXP]
John © (2005-03-09 20:35:00)Подскажите пож-ста:
как програмно искать файлы по нескольким расширениям?
Anatoly Podgoretsky (2005-03-10 09:39:00) [21]Еще раз функция с параметрами?
Antonn (2005-03-10 09:36:00) [22]Anatoly Podgoretsky © (10.03.05 9:24) [16]
не понял вопроса. Автор просил искать файлы по нескольким расширениям. Думаю сам поиск он выполнит, останется отсечь файлы с нужным расширением.
>function CheckFile(Name, Ext: string): Boolean;
>begin
> Result := ANSILowerCase(ExtractFileExt(Name)) =
>ANSILowerCase(Ext)
>end;
> Здесь Ext - обычное расширение, напр.: exe.
этот пример позволяет отсекать только по одному расширению(насколько я понял). Потому и пихнул Х15Ъ
Anatoly Podgoretsky (2005-03-10 09:24:00) [23]Antonn © (10.03.05 09:22) [15]
А ты не заметил, что у него функция с параметрами?
Antonn (2005-03-10 09:22:00) [24]begin...end © (10.03.05 8:18) [14]
нескольким расширениям?
вот.
begin...end (2005-03-10 08:18:00) [25]> Antonn © (10.03.05 6:14) [12]
> var
> Ext: string;
> begin
> ext := lowercase(ExtractFileExt(name));
> if pos(ext, lowercase(mask) ) > 0 then
> result:=true else result:=false;
> end
uses Masks;
begin
Result := MatchesMask(name, mask)
end
Но автор ветки хотел искать именно по расширениям, а не по полноценным маскам, поэтому в его случае достаточно будет такого:
function CheckFile(Name, Ext: string): Boolean;
begin
Result := ANSILowerCase(ExtractFileExt(Name)) = ANSILowerCase(Ext)
end
Здесь Ext - обычное расширение, напр.: exe.
John (2005-03-10 07:45:00) [26]Приятно что в это разделе форума то-же есть свои "Плахиши"!
Всем спасибо(Antonn в частности).
Antonn (2005-03-10 06:14:00) [27]function Check_File(name, mask: string): boolean;
var
Ext: string;
begin
ext := lowercase(ExtractFileExt(name));
if pos(ext, lowercase(mask) ) > 0 then
result:=true else result:=false;
end;
маска вида '*.wav;*.mp3;*.ogg', ну что то в таком виде
Anatoly Podgoretsky (2005-03-09 22:54:00) [28]Значит дырочка неправильная.
ламер_ (2005-03-09 22:54:00) [29]ИМХО, это зависит и от расширения - если .exe- сам себя пропихнет, а если html- то канал придется расширять :)).
Fay (2005-03-09 22:46:00) [30]2 Anatoly Podgoretsky © (09.03.05 22:44) [8]
Это зависит от того, куда втыкивать.
Anatoly Podgoretsky (2005-03-09 22:44:00) [31]А пролезет?
Fay (2005-03-09 22:37:00) [32]>> Не могу правильно воткнуть эту функцию.
Сверните её в трубочку.
John (2005-03-09 22:30:00) [33]Не могу правильно воткнуть эту функцию.
begin...end (2005-03-09 22:04:00) [34]> John (09.03.05 22:03) [4]
А можно поподробнее насчёт того, что у Вас не вяжется?
John (2005-03-09 22:03:00) [35]
> С помощью функций FindFirst/FindNext/FindClose. Искать по
> маске *.* и отфильтровывать ненужные файлы в зависимости
> от расширения, которое можно определять с помощью функции
> ExtractFileExt.
А по подробнее насчёт ExtractFileExt если можно, а то у меня что-то не вяжется?
ламер_ (2005-03-09 20:42:00) [36]Так же, как в OpenDialog реализуется свойство Filter
begin...end (2005-03-09 20:40:00) [37]С помощью функций FindFirst/FindNext/FindClose. Искать по маске *.* и отфильтровывать ненужные файлы в зависимости от расширения, которое можно определять с помощью функции ExtractFileExt.
Fay (2005-03-09 20:38:00) [38]Представь, что хочешь купить в автомате и кофе, и чай с лимоном.