MTA:Eir/FileSystem/translator/getFiles: Difference between revisions
		
		
		
		
		
		Jump to navigation
		Jump to search
		
				
		
		
	
mNo edit summary  | 
				mNo edit summary  | 
				||
| Line 4: | Line 4: | ||
==Syntax==  | ==Syntax==  | ||
<syntaxhighlight lang="lua">  | <syntaxhighlight lang="lua">  | ||
table translator  | table translator:getFiles ( string dirPath, string wildcard, bool recursive )  | ||
</syntaxhighlight>  | </syntaxhighlight>  | ||
| Line 27: | Line 27: | ||
     -- Query the counts.  |      -- Query the counts.  | ||
     fileCount = #getFiles( path, "*", false );  |      fileCount = #resRoot:getFiles( path, "*", false );  | ||
     dirCount = #getDirs( path, false );  |      dirCount = #resRoot:getDirs( path, false );  | ||
     -- Return the counts.  |      -- Return the counts.  | ||
Latest revision as of 23:30, 16 January 2022
This function returns a list of all files that are found under the wild-card and directory parameters. It is similar to scanDir but returns files only.
Syntax
table translator:getFiles ( string dirPath, string wildcard, bool recursive )
Arguments
- dirPath: a path to the directory the scan shall take place or start in
 - wildcard: glob-style wild-card for filename matching; every filename that matches the wild-card is returned
 - recursive: a boolean that specifies whether the whole directory tree at dirPath should be included into the scan
 
Returns
This function returns a table of all matching file entries for the performed scan. It returns false if dirPath is not a valid directory target for the translator.
Example
Click to collapse [-]
ClientThis snippet is yet another alternative to output the count of directories and files in a folder.
-- Get a handle to the resource instance directory.
local resRoot = fileCreateTranslator( "/" );
local function getFilesystemObjectCounts( path )
    local fileCount = 0;
    local dirCount = 0;
    -- Query the counts.
    fileCount = #resRoot:getFiles( path, "*", false );
    dirCount = #resRoot:getDirs( path, false );
    -- Return the counts.
    return fileCount, dirCount;
end
-- Output the filesystem object counts for the resource instance root.
local fileCount, dirCount = getFilesystemObjectCounts( "/" );
outputChatBox( "found " .. fileCount .. " files and " .. dirCount .. " directories in the resource folder root." );