Вместо метода Delete можно использовать метод DeleteFolder объекта FileSystemObject.
Метод
Обязательный параметр destination
Вместо метода Move можно использовать метод MoveFolder объекта FileSystemObject.
Коллекция
Коллекция Folders содержит объекты Folder для всех подкаталогов определенного каталога. Создается эта коллекция с помощью свойства SubFolders соответствующего объекта Folder. Например, в следующем примере переменная SubFolders является коллекцией, содержащей объекты Folder для всех подкаталогов каталога C:Program Files:
var FSO, F, SubFolders;
//Создаем объект FileSystemObject
FSO=WScript.CreateObject('Scripting.FileSystemObject');
//Создаем объект Folder для каталога C:Program Files
F=FSO.GetFolder('C:\Program Files');
//Создаем коллекцию подкаталогов каталога C:Program Files
SubFolders=F.SubFolders;
Коллекция Folders (как и Drives) имеет свойство Count и метод Item. Кроме этого, у Folders есть метод Add (, позволяющий создавать новые подкаталоги. В листинге 5.10 приведен сценарий MakeSubFold.js, который создает в каталоге 'С:Мои документы' подкаталог 'Новая папка'.
/*******************************************************************/
/* Имя: MakeSubFold.js */
/* Язык: JScript */
/* Описание: Создание нового каталога */
/*******************************************************************/
//Объявляем переменные
var FSO, F, SubFolders;
//Создаем объект FileSystemObject
FSO=WScript.CreateObject('Scripting.FileSystemObject');
//Создаем объект Folder для каталога C:Program Files
F=FSO.GetFolder('C:\Program Files');
//Создаем коллекцию подкаталогов каталога C:Program Files
SubFolders=F.SubFolders;
// Создаем каталог C:Program FilesНовая папка
SubFolders.Add('Новая папка');
/************* Конец *********************************************/
Напомним, что новый каталог также можно создать с помощью метода CreateFolder объекта FileSystemObject.
Для доступа ко всем элементам коллекции нужно использовать, как обычно, объект Enumerator. Например, в листинге 5.11 приведен сценарий ListSubFold.js, в котором на экран выводятся названия всех подкаталогов каталога C:Program Files (рис. 5.5).
Рис. 5.5. Список всех подкаталогов каталога C:Program Files
/*******************************************************************/
/* Имя: ListSubFold.js */
/* Язык: JScript */
/* Описание: Получение списка всех подкаталогов заданного каталога */
/*******************************************************************/
//Объявляем переменные
var FSO,F,SFold,SubFolders,s;
//Создаем объект FileSystemObject
FSO=WScript.CreateObject('Scripting.FileSystemObject');
//Путь к каталогу
SFold='C:\Program Files';
s='Каталог '+SFold+'
';
s+='Подкаталоги:
';
//Создаем объект Folder для каталога C:Program Files
F=FSO.GetFolder(SFold);
//Создаем коллекцию подкаталогов каталога C:Program Files
SubFolders= new Enumerator(F.SubFolders);
//Цикл по всем подкаталогам
for (; !SubFolders.atEnd(); SubFolders.moveNext()) {
s+=SubFolders.item()+'
'; //Добавляем строку с именем подкаталога
}
//Выводим полученные строки на экран
WScript.Echo(s);
/************* Конец *********************************************/
Объект
