Листинг 5.9. Вывод даты создания текущего каталога
/*******************************************************************/
/* Имя: DateFolder.js */
/* Язык: JScript */
/* Описание: Вывод на экран даты создания текущего каталога */
/*******************************************************************/
var FSO,WshShell,s; //Объявляем переменные
//Создаем объект FileSystemObject
FSO = WScript.CreateObject("Scripting.FileSystemObject");
//Создаем объект WshShell
WshShell=WScript.CreateObject("WScript.Shell");
//Определяем каталог, из которого был запущен сценарий
//(текущий каталог)
Folder = FSO.GetFolder(WshShell.CurrentDirectory);
//Получаем имя текущего каталога
s="Текущий каталог: "+Folder.Name+"\n";
//Получаем дату создания текущего каталога
s+="Дата создания: "+Folder.DateCreated+"\n";
//Выводим информацию на экран
WScript.Echo(s);
/************* Конец *********************************************/
Методы объекта Folder
описаны в табл. 5.9.
Таблица 5.9.Методы объекта Folder
Метод |
Описание |
Copy( destination [, overwrite] ) |
Копирует каталог в другое место |
CreateTextFile( filename[, overwrite [, unicode]] ) |
Создает новый текстовый файл с именем filename и возвращает указывающий на этот файл объект TextStream (этот метод аналогичен рассмотренному выше методу CreateTextFile объекта FileSystemObject ) |
Delete( [force] ) |
Удаляет каталог |
Move( destination ) |
Перемещает каталог в другое место |
Приведем необходимые замечания для методов из табл. 5.9.
Обязательный параметр destination
определяет каталог, в который будет производиться копирование; групповые символы в имени каталога недопустимы.
Параметр overwrite
является логической переменной, определяющей, следует ли заменять уже существующий каталог с именем destination
( overwrite =true
) или нет ( overwrite=false
).
Замечание
Вместо метода Сору
можно использовать метод CopyFolder
объекта FileSystemObject
.
Если параметр force
равен false
или не указан, то с помощью метода Delete
будет нельзя удалить каталог с атрибутом "только для чтения" (read-only). Установка для force значения true позволит сразу удалять такие каталоги.
При использовании метода Delete
неважно, является ли заданный каталог пустым или нет — он удалится в любом случае.
Замечание
Вместо метода 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( 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\Новая папка
Читать дальше