MyChat Scripts: функция GetDirectoriesAndFiles, получить список папок и файлов
Получить список папок и файлов в указанном каталоге.
Синтаксис
function GetDirectoriesAndFiles(sPath, sFilesMask: string; bRecursive, bFolders, bFiles: boolean): string;
Параметры и возвращаемые значения
Параметр |
Тип |
Значение |
sPath |
string |
путь к папке, содержимое которой нужно получить; |
sFilesMask |
string |
маска для списка файлов, которые нужно получить; |
bRecursive |
boolean |
рекурсивный поиск (искать вложенные папки и файлы); |
bFolders |
boolean |
искать папки; |
bFiles |
boolean |
искать файлы. |
Результат функции
Список найденных файлов и папок с указанием полных путей, строки разделены символами CRLF. Если исходная папка не существует или файлы и папки не найдены — функция вернёт пустую строку.
Пример
Нужно получить полный список папок и содержащихся в них файлов из каталога "c:\temp\":
const
PATH_FROM = 'c:\temp\';
var
sData: string;
begin
sData := GetDirectoriesAndFiles(PATH_FROM, '*.*', true, true, true);
while length(sData) > 0 do
mLogScript(Fetch(sData, CRLF), '');
end.
Результат работы скрипта
[14:18:33] (Log "GetDirectoriesAndFiles"): c:\temp\7.3\
[14:18:33] (Log "GetDirectoriesAndFiles"): c:\temp\7.3\checksums.txt
[14:18:33] (Log "GetDirectoriesAndFiles"): c:\temp\7.3\file_id.diz
[14:18:33] (Log "GetDirectoriesAndFiles"): c:\temp\7.3\license.txt
[14:18:33] (Log "GetDirectoriesAndFiles"): c:\temp\7.3\mcserv-v7-3-0.exe
[14:18:33] (Log "GetDirectoriesAndFiles"): c:\temp\log.txt
[14:18:33] (Log "GetDirectoriesAndFiles"): c:\temp\logs_client\
[14:18:33] (Log "GetDirectoriesAndFiles"): c:\temp\logs_client\logs.db
[14:18:33] (Log "GetDirectoriesAndFiles"): c:\temp\private_talks.json
[14:18:33] (Log "GetDirectoriesAndFiles"): c:\temp\smileys\
[14:18:33] (Log "GetDirectoriesAndFiles"): c:\temp\smileys\classic\
[14:18:33] (Log "GetDirectoriesAndFiles"): c:\temp\smileys\classic\define.ini
[14:18:33] (Log "GetDirectoriesAndFiles"): c:\temp\smileys\extended\
[14:18:33] (Log "GetDirectoriesAndFiles"): c:\temp\smileys\extended\define.ini
[14:18:33] (Log "GetDirectoriesAndFiles"): c:\temp\smileys\newyear\
[14:18:33] (Log "GetDirectoriesAndFiles"): c:\temp\smileys\newyear\define.ini
[14:18:33] (Log "GetDirectoriesAndFiles"): c:\temp\smileys\skype\
[14:18:33] (Log "GetDirectoriesAndFiles"): c:\temp\smileys\skype\define.ini
[14:18:33] (Log "GetDirectoriesAndFiles"): c:\temp\smileys\static\
[14:18:33] (Log "GetDirectoriesAndFiles"): c:\temp\smileys\static\define.ini
[14:18:33] (Log "GetDirectoriesAndFiles"): c:\temp\tconf.reg
[14:18:33] (Log "GetDirectoriesAndFiles"): c:\temp\tconfnode32.reg
[14:18:33] (Log "GetDirectoriesAndFiles"): c:\temp\test2.txt
[14:18:33] (Log "GetDirectoriesAndFiles"): c:\temp\text.txt
[14:18:33] (Run "GetDirectoriesAndFiles"): Время выполнения скрипта: 5 мс
[14:18:33] (Run "GetDirectoriesAndFiles"): Скрипт выполнен успешно.