Back to FabImage Library websiteYou are here:
Start »
Function Reference »
System »
File System »
RemoveFile_ByTime
Header: |
STD.h
|
Namespace: |
fil |
Module: |
FoundationLite |
Removes files older than the specified date/time from a directory.
Syntax
void fil::RemoveFile_ByTime
(
const ftl::Directory& inDirectory,
const fil::DateTime& inDateTime,
const ftl::String& inMask,
const fil::FileTimeVariant::Type& inTimeVariant,
const fil::FileNameFilter::Type& inMaskType,
bool inRecursive,
bool inRemoveDirectories,
ftl::Array<ftl::File>& outRemoved
)
Parameters
|
Name |
Type |
Default |
Description |
 |
inDirectory |
const Directory& |
|
Directory from which the files will be deleted |
 |
inDateTime |
const DateTime& |
|
Date/time |
 |
inMask |
const String& |
\"*\" |
Filter pattern |
 |
inTimeVariant |
const FileTimeVariant::Type& |
ModificationTime |
Variant of the time attribute to use |
 |
inMaskType |
const FileNameFilter::Type& |
Wildcard |
Filter type to use with the mask |
 |
inRecursive |
bool |
False |
Process subdirectories recursively |
 |
inRemoveDirectories |
bool |
True |
Specifies whether to also delete directories that become empty after files are deleted from them |
 |
outRemoved |
Array<File>& |
|
List of actually deleted entries |
Remarks
inMask pattern string
Port
inMask specifies wildcard pattern that selects files this filter will operate on.
Supported wildcards:
- * - any string of characters, including no characters
- ? - exactly one character
You can use any expression like examples below:
Examples:
- * - all files,
- *.jpg - files only with extension .jpg,
- Filename.* - files with name "Filename" and any extension, including no extension e.g. "Filename."
- Filename.?? - files with name "Filename" and two letter extension,
Using regular expressions
When port
inMaskType is set to Regex, the
inMask port is interpreted as a regular expression pattern rather than a wildcard. The ECMAScript regular expression grammar is used.
See some examples of regular expression patterns below:
Regex patterns examples:
- .* - all files,
- .*\.jpg - files only with extension .jpg,
- Filename\..* - files with name "Filename" and any extension, including no extension e.g. "Filename."
- Filename\..{2} - files with name "Filename" and two letter extension,
Specifying the time
The
inDateTime port must be set to a DateTime object with the unixTime field set to the desired value.
MakeDateTime filter can be used to create such an object.
See Also
- FindFiles – Returns files of the input directory.
- MakeDateTime – Returns a valid DateTime object completed with the input parameters.