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

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

function ReportDriveStatus(drv) {

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

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

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

 //Проверяем наличие диска drv

 if (FSO.DriveExists(drv)) s += "Диск " + drv + " существует.";

 else s += "Диск " + drv + " не существует.";

 return(s);

}

Функция ReportDriveStatus будет возвращать информацию о наличии диска, передаваемого в эту функцию в качестве параметра.

<p>Метод<emphasis> GetAbsolutePathName</emphasis></p>

Для иллюстрации работы этого метода предположим, что текущим каталогом является C:\MyDocuments\Reports. В табл. 5.3 приведены значения, возвращаемые методом GetAbsolutePathName, при различных значениях параметра pathspec.

Таблица 5.3. Варианты работы метода GetAbsolutePathName

ПараметрpathspecВозвращаемое значение
"С:""С:\MyDocuments\Reports"
"С:..""С:\MyDocuments"
"С:\\""С:\"
"Region1""С:\MyDocuments\Reports\Region1"
"С:\\..\\..\\MyDocuments""С:\МуDocuments" 
<p>Метод<emphasis> GetBaseName</emphasis></p>

Работу этого метода иллюстрирует сценарий BaseName.js, приведенный в листинге 5.3. В результате выполнения этого сценария на экран выводится диалоговое окно, в котором отражены полный путь к файлу и базовое имя, выделенное из этого пути (рис. 5.1).

Рис. 5.1. Полный путь к файлу и базовое имя для этого пути

Листинг 5.3. Выделение базового имени файла

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

/* Имя: BaseName.js                                                */

/* Язык: JScript                                                   */

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

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

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

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

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

//Задаем путь к файлу

SPath="C:\\Мои документы\\letter.txt";

//Выделяем базовое имя файла (без расширения)

BaseName = FSO.GetBaseName(SPath);

//Выводим на экран путь и базовое имя

s="Путь: "+SPath+"\n";

s+="Базовое имя: "+BaseName;

WScript.Echo(s);

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

<p>Метод<emphasis> GetDrive</emphasis></p>

Параметр drivespec в данном методе может задаваться одной буквой (например, "С"), буквой с двоеточием ("С:"), буквой с двоеточием и символом разделителя пути ("С:\\"). Для сетевого диска drivespec можно указывать в формате UNC (например, "Server1\\Programs").

Если параметр drivespec указывает на несуществующий диск или задан в неверном формате, то при выполнении метода GetDrive возникнет ошибка.

Если вам требуется преобразовать строку, содержащую обычный путь к файлу или каталогу, в вид, пригодный для GetDrive, необходимо применять методы GetAbsolutePathName и GetDriveName:

DriveSpec = GetDriveName(GetAbsolutePathName(Path))

<p>Метод<emphasis> GetParentFolderName</emphasis></p>

Для иллюстрации работы этого метода запустим сценарий ParentFolder.js (листинг 5.4). В результате будет выведено диалоговое окно с полным путем к файлу и путь к родительскому каталогу этого файла (рис. 5.2).

Рис. 5.2. Полный путь к файлу и родительский каталог этого файла

Листинг 5.4. Определение родительского каталога для файла
Перейти на страницу:

Похожие книги