ファイルを削除するとき、ワイルドカードで削除したいときがあります。*.txt とすると、拡張子が .txt のファイルを削除できます。
procedure DeleteFileEx(const sWildCardFile: String); var i: Integer; SR: TSearchRec; SL: TStringList; begin if FindFirst(sWildCardFile, FaArchive, SR) = 0 then begin SL := TStringList.Create; repeat if (SR.Attr and FaArchive) = sr.Attr then SL.Add(SR.Name); until FindNext(SR) <> 0; FindClose(SR); for i := 0 to SL.Count - 1 do DeleteFile(ExtractFilePath(sWildCardFile) + SL.Strings[i]); SL.Free; end; end;
次のように使用します。
// C:\Temp の Temp????.* をすべて削除する DeleteFileEx('C:\Temp\Temp????.*');