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

на главную - закладки

Жанры

Windows Script Host для Windows 2000/XP

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

Шрифт:
Метод Описание
BuildPath(path, name)
Добавляет к заданному пути (параметр
path
) новое имя (параметр
name
)
CopyFile(source, destination [, overwrite])
Копирует один или несколько файлов из одного места (параметр
source
) в другое (параметр
destination
)
CopyFolder(source, destination [, overwrite])
Копирует каталог со всеми подкаталогами из одного места (параметр
source
) в другое (параметр
destination
)
CreateFolder(foldername)
Создает новый каталог с именем
foldername
.
Если каталог
foldername
уже существует, то произойдет ошибка
CreateTextFile(filename [/overwrite[, unicode]])
Создает новый текстовый файл с именем
filename
и возвращает указывающий на этот файл объект
TextStream
DeleteFile(filespec [, force])
Удаляет файл, путь к которому задан параметром
filespec
DeleteFolder(folderspec [, force])
Удаляет каталог, путь к которому задан параметром
folderspec
, вместе со всем его содержимым
DriveExists(drivespec)
Возвращает
True
, если заданное параметром
drivespec
устройство существует и
False
в противном случае
FileExists(filespec)
Возвращает
True
, если заданный параметром
filespec
файл существует и
False
в противном случае
FolderExists(folderspec)
Возвращает
True
, если заданный параметром
folderspec
каталог существует и
False
в противном случае
GetAbsolutePathName(pathspec)
Возвращает полный путь для заданного относительного пути
pathspec
(из текущего каталога)
GetBaseName(path)
Возвращает базовое имя (без расширения) для последнего компонента в пути
path
GetDrive(drivespec)
Возвращает объект
Drive
, соответствующий диску, заданному параметром
drivespec
GetDriveName(path)
Возвращает строку, содержащую имя диска в заданном пути. Если из параметра
path
нельзя выделить имя диска, то метод возвращает пустую строку (" ")
GetExtensionName(path)
Возвращает строку, содержащую расширение для последнего компонента в пути
path
. Если из параметра
path
нельзя выделить компоненты пути, то
GetExtensionName
возвращает пустую строку (""). Для сетевых дисков корневой каталог (\) рассматривается как компонент пути
GetFile(filespec)
Возвращает объект
File
, соответствующий файлу, заданному параметром
filespec
.
Если файл, путь к которому задан параметром
filespec
,
не существует, то при выполнении метода
GetFile
возникнет ошибка
GetFileName(pathspec)
Возвращает имя файла, заданного полным путем к нему. Если из параметра
pathspec
нельзя выделить имя файла, метод
GetFileName
возвращает пустую строку ("")
GetFolder(folderpec)
Возвращает объект
Folder
, соответствующий каталогу, заданному параметром
folderspec
.
Если каталог, путь к которому задан параметром
folderspec
, не существует, при выполнении метода
GetFolder
возникнет ошибка
GetParentFolderName(path)
Возвращает строку, содержащую имя родительского каталога для последнего компонента в заданном пути. Если для последнего компонента в пути, заданном параметром
path
,
нельзя определить родительский каталог, то метод возвращает пустую строку ("")
GetSpecialFolder(folderpec)
Возвращает объект
Folder
для некоторых специальных папок Windows, заданных числовым параметром
folderspec
GetTempName
Возвращает случайным образом сгенерированное имя файла или каталога, которое может быть использовано для операций, требующих наличия временного файла или каталога
MoveFile(source, destination)
Перемещает один или несколько файлов из одного места (параметр
source
) в другое (параметр
destination
)
MoveFolder(source, destination)
Перемещает
один или несколько каталогов из одного места (параметр
source
) в другое (параметр
destination
)
OpenTextFile(filename[, iomode[, create[, format]]])
Открывает заданный текстовый файл и возвращает объект
TextStream
для работы с этим файлом

Сами названия методов объекта

FileSystemObject
довольно прозрачно указывают на выполняемые ими действия. Приведем необходимые пояснения и примеры для перечисленных методов.

Методы CopyFile и CopyFolder

Для копирования нескольких файлов или каталогов в последнем компоненте параметра

source
можно указывать групповые символы "?" и "*"; в параметре
destination
групповые символы недопустимы. Например, следующий пример является корректным кодом:

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

FSO.CopyFile("с:\\mydocuments\\letters\\*.doc", "с:\\tempfolder\\");

А так писать нельзя:

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

FSO.CopyFile("с:\\mydocuments\\*\\R1???97.xls", "с:\\tempfolder");

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

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

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

CopyFile
и
CopyFolder
процесс копирования прерывается после первой возникшей ошибки (как и в команде
COPY
операционной системы).

Метод CreateTextFile

Параметр

overwrite
, используемый в методе, имеет значение в том случае, когда создаваемый файл уже существует. Если
overwrite
равно
true
, то такой файл перепишется (старое содержимое будет утеряно), если же в качестве
overwrite
указано
false
, то файл переписываться не будет. Если этот параметр вообще не указан, то существующий файл также не будет переписан.

Параметр

unicode
является логическим значением, указывающим, в каком формате (ASCII или Unicode) следует создавать файл. Если
unicode
равно
true
, то файл создается в формате Unicode, если же
unicode
равно
false
или этот параметр вообще не указан, то файл создается в режиме ASCII.

Для дальнейшей работы с созданным файлом, т.е. для записи или чтения информации, нужно использовать методы объекта

TextStream
. Соответствующий пример сценария приведен в листинге 5.1.

Листинг 5.1. Создание текстового файла и запись в него строки

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

/* Имя: CreateFile.js */

/* Язык: JScript */

/* Описание: Создание текстового файла и запись в него строки */

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

var FSO,f; //Объявляем переменные

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

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

//Создаем на диске C: текстовый файл TestFile.txt

f = FSO.CreateTextFile("C:\\TestFile.txt", true);

//Записываем строку в файл

f.WriteLine("Привет!");

//Закрываем файл

f.Close;

/************* Конец *********************************************/

Методы DeleteFile и DeleteFolder

Параметры

filespec
или
folderspec
, используемые в методах, могут содержать групповые символы "?" и "*" в последнем компоненте пути для удаления сразу нескольких файлов/каталогов.

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

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

Замечание

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

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

Если заданный для удаления файл/каталог не будет найден, то возникнет ошибка.

Метод DriveExists

Для дисководов со съемными носителями метод

DriveExists
вернет
true
даже в том случае, если носитель физически отсутствует. Для того чтобы определить готовность дисковода, нужно использовать свойство
IsReady
соответствующего объекта
Drive
.

В качестве примера использования метода

DriveExists
приведем функцию
ReportDriveStatus
, которая возвращает информацию о наличии диска, передаваемого в эту функцию в качестве параметра (листинг 5.2).

Листинг 5.2. Функция
ReportDriveStatus

function ReportDriveStatus(drv) {

 var FSO, s ="" //Объявляем переменные

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

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

Поделиться:
Популярные книги

Кодекс Охотника. Книга XXXII

Винокуров Юрий
32. Кодекс Охотника
Фантастика:
аниме
фэнтези
попаданцы
5.00
рейтинг книги
Кодекс Охотника. Книга XXXII

Запечатанный во тьме. Том 1. Тысячи лет кача

NikL
1. Хроники Арнея
Фантастика:
уся
эпическая фантастика
фэнтези
5.00
рейтинг книги
Запечатанный во тьме. Том 1. Тысячи лет кача

Чехов книга 3

Гоблин (MeXXanik)
3. Адвокат Чехов
Фантастика:
попаданцы
альтернативная история
аниме
6.00
рейтинг книги
Чехов книга 3

Моров. Том 5

Кощеев Владимир
4. Моров
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Моров. Том 5

Наследие Маозари

Панежин Евгений
1. Наследие Маозари
Фантастика:
рпг
попаданцы
аниме
5.80
рейтинг книги
Наследие Маозари

Эйзенштейн

Шкловский Виктор Борисович
Жизнь в искусстве
Документальная литература:
биографии и мемуары
5.00
рейтинг книги
Эйзенштейн

Дочь моего друга

Тоцка Тала
2. Айдаровы
Любовные романы:
современные любовные романы
эро литература
5.00
рейтинг книги
Дочь моего друга

Я снова не князь! Книга XVII

Дрейк Сириус
17. Дорогой барон!
Фантастика:
юмористическое фэнтези
попаданцы
аниме
5.00
рейтинг книги
Я снова не князь! Книга XVII

Ботаник

Щепетнов Евгений Владимирович
1. Ботаник
Фантастика:
фэнтези
боевая фантастика
4.56
рейтинг книги
Ботаник

Искушение генерала драконов

Лунёва Мария
2. Генералы драконов
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Искушение генерала драконов

Кодекс Охотника. Книга IX

Винокуров Юрий
9. Кодекс Охотника
Фантастика:
боевая фантастика
городское фэнтези
попаданцы
5.00
рейтинг книги
Кодекс Охотника. Книга IX

Травница Его Драконейшества

Рель Кейлет
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Травница Его Драконейшества

Контртеррор

Валериев Игорь
6. Ермак
Фантастика:
альтернативная история
5.00
рейтинг книги
Контртеррор

Зодчий. Книга II

Погуляй Юрий Александрович
2. Зодчий Империи
Фантастика:
аниме
фэнтези
попаданцы
5.00
рейтинг книги
Зодчий. Книга II