Вместо метода 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);
/************* Конец *********************************************/
Объект