MyChat Scripts: функция GetDirectoriesAndFiles, получить список папок и файлов

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"): Скрипт выполнен успешно.

 

Ещё посмотреть

Fetch

mLogScript