Чтение онлайн

ЖАНРЫ

Windows Script Host для Windows 2000/XP

Попов Андрей Викторович

Шрифт:

Таблица 5.9. Методы объекта

Folder

Метод Описание
Copy(destination [, overwrite])
Копирует каталог в другое место
CreateTextFile(filename[, overwrite [, unicode]])
Создает новый текстовый файл с именем
filename
и возвращает указывающий на этот файл объект
TextStream
(этот метод
аналогичен рассмотренному выше методу
CreateTextFile
объекта
FileSystemObject
)
Delete([force])
Удаляет каталог
Move(destination) Перемещает каталог в другое место

Приведем необходимые замечания для методов из табл. 5.9.

Метод Copy

Обязательный параметр

destination
определяет каталог, в который будет производиться копирование; групповые символы в имени каталога недопустимы.

Параметр

overwrite
является логической переменной, определяющей, следует ли заменять уже существующий каталог с именем
destination
(
overwrite=true
) или нет (
overwrite=false
).

Замечание 

Вместо метода

Сору
можно использовать метод
CopyFolder
объекта
FileSystemObject
.

Метод Delete

Если параметр

force
равен
false
или не указан, то с помощью метода
Delete
будет нельзя удалить каталог с атрибутом "только для чтения" (read-only). Установка для force значения true позволит сразу удалять такие каталоги.

При использовании метода

Delete
неважно, является ли заданный каталог пустым или нет — он удалится в любом случае.

Замечание

Вместо метода

Delete
можно использовать метод
DeleteFolder
объекта
FileSystemObject
.

Метод Move

Обязательный параметр

destination
определяет каталог, в который будет производиться перемещение; групповые символы в имени каталога недопустимы.

Замечание 

Вместо метода

Move
можно использовать метод
MoveFolder
объекта
FileSystemObject

Коллекция Folders

Коллекция

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(folderName)
, позволяющий создавать новые подкаталоги. В листинге 5.10 приведен сценарий MakeSubFold.js, который создает в каталоге "С:\Мои документы" подкаталог "Новая папка".

Листинг 5.10. Создание нового каталога

/*******************************************************************/

/* Имя: 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

Листинг 5.11. Построение списка подкаталогов

/*******************************************************************/

/* Имя: ListSubFold.js */

/* Язык: JScript */

/* Описание: Получение списка всех подкаталогов заданного каталога */

/*******************************************************************/

//Объявляем переменные

var FSO,F,SFold,SubFolders,s;

//Создаем объект FileSystemObject

FSO=WScript.CreateObject("Scripting.FileSystemObject");

//Путь к каталогу

SFold="C:\\Program Files";

s="Каталог "+SFold+"\n";

s+="Подкаталоги:\n";

//Создаем объект Folder для каталога C:\Program Files

Поделиться с друзьями: