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

ЖАНРЫ

Windows Script Host для Windows 2000/XP

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

Шрифт:

Параметр

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

Числовой параметр

format
определяет формат открываемого файла (табл. 5.6).

Таблица 5.6. Параметр

format

Константа Значение Описание
TristateUseDefault
– 2 Файл
открывается в формате, используемом системой по умолчанию
TristateTrue
– 1 Файл открывается в формате Unicode
TristateFalse
0 Файл открывается в формате ASCII

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

TextStream
.

В следующем примере с помощью метода

OpenTextFile
текстовый файл открывается в режиме добавления информации (листинг 5.6).

Листинг 5.6. Добавление информации в текстовый файл

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

/* Имя: AppendFile.js */

/* Язык: JScript */

/* Описание: Добавление строки в текстовый файл */

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

//Объявляем переменные и инициализируем константы

var FSO,f,ForAppending = 8;

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

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

//Открываем файл

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

//Добавление в файл строку

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

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

f.Close;

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

Замечание

Мнемонические константы, используемые в качестве параметров

iomode
и
create
, можно не определять явным образом в сценарии, как это сделано в вышеприведенном примере, а брать из самого объекта
FileSystemObject
(точнее говоря, из библиотеки типов этого объекта). Для этого в сценариях нужно применять разметку XML (см. листинг 3.9).

Объект Drive

С помощью объекта

Drive
можно получить доступ к свойствам заданного локального или сетевого диска. Создается объект
Drive
с помощью метода
GetDrive
объекта
FileSystemObject
следующим образом:

var FSO, D;

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

D = FSO.GetDrive("C:");

Также объекты

Drive
могут быть получены как элементы коллекции
Drives
.

Свойства объекта

Drive
представлены в табл. 5.7; методов у этого объекта нет.

Таблица 5.7. Свойства объекта

Drive 

Свойство Описание
AvailableSpace
Содержит количество доступного для пользователя места (в байтах) на диске
DriveLetter
Содержит букву, ассоциированную с локальным устройством или сетевым ресурсом. Это свойство доступно только для чтения
DriveType
Содержит числовое значение, определяющее тип устройства: 0 — неизвестное
устройство; 1 — устройство со сменным носителем; 2 — жесткий диск; 3 — сетевой диск; 4 — CD-ROM; 5 — RAM-диск
FileSystem
Содержит тип файловой системы, использующейся на диске (FAT, NTFS или CDFS)
FreeSpace
Содержит количество свободного места (в байтах) на локальном диске или сетевом ресурсе. Доступно только для чтения
IsReady
Содержит
true
, если устройство готово, и
false
в противном случае. Для устройств со сменными носителями и приводов CD-ROM
IsReady
возвращает
true
только в том случае, когда в дисковод вставлен соответствующий носитель и устройство готово предоставить доступ к этому носителю
Path
Содержит путь к диску (например, "
С:
", но не "
С:\
")
RootFolder
Содержит объект
Folder
, соответствующий корневому каталогу на диске. Доступно только для чтения
SerialNumber
Содержат десятичный серийный номер тома заданного диска
ShareName
Содержит сетевое имя для диска. Если объект не является сетевым диском, то в свойстве
ShareName
содержится пустая строка ("")
TotalSize
Содержит общий объем в байтах локального диска или сетевого ресурса
VolumeName
Содержит метку тома для диска. Доступно для чтения и записи

В листинге 5.7 приведен сценарий DriveInfo.js, в котором объект

Drive
используется для доступа к некоторым свойствам диска С: (рис. 5.3).

Рис. 5.3. Свойства диска С:

Листинг 5.7. Получение свойств диска С

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

/* Имя: DriveInfo.js */

/* Язык: JScript */

/* Описание: Вывод на экран свойств диска C: */

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

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

var FSO,D,TotalSize,FreeSpace,s;

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

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

//Создаем объект Drive для диска C:

D = FSO.GetDrive("C:");

s="Информация о диске C:\n";

//Получаем серийный номер диска

s+="Серийный номер: "+D.SerialNumber+"\n";

//Получаем метку тома диска

s+="Метка тома: "+D.VolumeName+"\n";

//Вычисляем общий объем диска в килобайтах

TotalSize=D.TotalSize/1024;

s+="Объем: "+TotalSize+" Kb\n";

//Вычисляем объем свободного пространства диска в килобайтах

FreeSpace=D.FreeSpace/1024;

s+="Свободно: "+FreeSpace+" Kb\n";

//Выводим свойства диска на экран

WScript.Echo(s);

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

Коллекция Drives

Доступная только для чтения коллекция

Drives
содержит объекты
Drive
для всех доступных дисков компьютера, в том числе для сетевых дисков и дисководов со сменными носителями.

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