Форум: "Основная";
Текущий архив: 2005.01.23;
Скачать: [xml.tar.bz2];
ВнизСоответствие имени файла заданой маске Найти похожие ветки
← →
Anonimus © (2005-01-10 14:56) [0]Добрый день.
Кто-нибудь может подсказать функцию для проверки сабжа.
Мне это представляется таким вот образом :function IfMask(FileName, Mask : string): boolean;
← →
begin...end © (2005-01-10 14:58) [1]> Anonimus © (10.01.05 14:56)
Модуль Masks, функция MatchesMask.
← →
Anonimus © (2005-01-10 15:15) [2]Сенкс, щаз попробую
← →
TUser © (2005-01-10 15:50) [3]Попробую сам написать
function IsValidMask(FileName: string;
Mask: string;
StartInFile: integer = 1;
StartInMask: integer = 1): boolean;
function HasInPosition: boolean;
var i: integer;
begin
i:=StartInFile; result:=true;
while result and (i <= length(FileName)) do
if IsValidMask(FileName,Mask,i,StartInMask+1) then
result:=false
else inc (i);
result:=not result;
end;
begin
result:=true;
while result and
(StartInName <= length(FileName)) and
(StartInMask <= length(Mask)) do begin
if Mask[StartInMask] = "*" then begin
result:=HasInPosition;
Exit;
end;
result:=(Mask[StartInMask] = "?") or
(Mask[StartInMask] = FileName[StartInFile]);
if result then begin
inc (StartInMask);
inc (StartInFile);
end;
end;
end;
← →
Antonn © (2005-01-10 16:02) [4]а так:) :
ext := lowercase(ExtractFileExt(name));
if pos(ext, lowercase("*.wav;*.pls;*.m3u;") ) > 0 then begin
///
end;
← →
TUser © (2005-01-10 16:12) [5]ExtractFileExt звездочку не возвращает. Кроме того, [2] и [3] универсальнее.
← →
Antonn © (2005-01-10 16:16) [6]
> ExtractFileExt звездочку не возвращает.
а она и не нужна. мой пример ищет расширение файла в строке расширений. и находит, если есть. да еще он попроще:)
← →
Anonimus © (2005-01-10 17:19) [7]TUser © (10.01.05 15:50) [3]
А смысл, если есть готовое =)
Antonn © (10.01.05 16:16) [6]
Маска файла подразумевает не только расширение, так например
~tmp_doc.doc = ~tmp.*
~tmp_doc.doc = *.doc
если нужно скопировать все ДОКи, то не обязательно копировать временные файлы Ворда
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2005.01.23;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.044 c