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

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

Жанры

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");

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

Оживший камень

Кас Маркус
1. Артефактор
Фантастика:
городское фэнтези
попаданцы
аниме
5.00
рейтинг книги
Оживший камень

Горизонты

Somber
5. Фоллаут Эквестрия: Проект «Горизонты»
Фантастика:
фэнтези
7.00
рейтинг книги
Горизонты

Моров. Том 7

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

Путёвка в спецназ

Соколов Вячеслав Иванович
1. Мажор
Фантастика:
боевая фантастика
7.55
рейтинг книги
Путёвка в спецназ

Двойник короля 11

Скабер Артемий
11. Двойник Короля
Фантастика:
аниме
фэнтези
попаданцы
5.00
рейтинг книги
Двойник короля 11

Гранд империи

Земляной Андрей Борисович
3. Страж
Фантастика:
фэнтези
попаданцы
альтернативная история
5.60
рейтинг книги
Гранд империи

Дракон

Бубела Олег Николаевич
5. Совсем не герой
Фантастика:
фэнтези
попаданцы
9.31
рейтинг книги
Дракон

Господин из завтра. Тетралогия.

Махров Алексей
Фантастика:
альтернативная история
8.32
рейтинг книги
Господин из завтра. Тетралогия.

Деревенщина в Пекине 2

Афанасьев Семён
2. Пекин
Фантастика:
попаданцы
дорама
фантастика: прочее
5.00
рейтинг книги
Деревенщина в Пекине 2

Газлайтер. Том 40

Володин Григорий Григорьевич
40. История Телепата
Фантастика:
альтернативная история
аниме
попаданцы
5.00
рейтинг книги
Газлайтер. Том 40

Я все еще не царь. Книга XXVI

Дрейк Сириус
26. Дорогой барон!
Фантастика:
попаданцы
аниме
5.00
рейтинг книги
Я все еще не царь. Книга XXVI

#Бояръ-Аниме. Газлайтер. Том 37

Володин Григорий Григорьевич
37. История Телепата
Фантастика:
фэнтези
аниме
боевая фантастика
5.00
рейтинг книги
#Бояръ-Аниме. Газлайтер. Том 37

Зауряд-врач

Дроздов Анатолий Федорович
1. Зауряд-врач
Фантастика:
альтернативная история
8.64
рейтинг книги
Зауряд-врач

Главный рубильник. Расцвет и гибель информационных империй от радио до интернета

Ву Тим
Деловая литература:
о бизнесе популярно
5.00
рейтинг книги
Главный рубильник. Расцвет и гибель информационных империй от радио до интернета