На этом шаге мы рассмотрим способы создания объекта файловой системы.
Итак, чтобы получить доступ к файловой системе, необходимо создать для нее объект FileSystemObject (точнее говоря, экземпляр FSO). Если ваша программа на JavaScript будет выполняться браузером как сценарий в HTML-документе, то для создания FSO можно использовать только следующее выражение:
var fso = new ActiveXObject ("Scripting.FileSystemObject");
Если программа предназначена для выполнения с помощью WSH, то кроме указанного выше выражения можно использовать еще и такое:
var fso = WScript.CreateObject("Scripting.FileSystemObject");
Здесь fso — переменная (ее имя может быть произвольным), содержащая ссылку на объект файловой системы. Эта ссылка будет использоваться для применения методов и свойств объекта файловой системы. В дальнейшем мы будем применять первый вариант создания FSO, поскольку он подходит и для браузера, и для WSH. Заметим, что первый вариант соответствует вызову объекта FSO как элемента управления ActiveX, а второй — как объекта приложения WScript. Но на этих деталях мы не будем здесь останавливаться.
После того как объект файловой системы создан, можно применить методы для создания и удаления папок и файлов, копирования и перемещения файлов, а также получения информации о дисках, папках и файлах. Существуют и другие методы, такие как открытие и закрытие файла, запись данных в файл и т. п. Мы рассмотрим их позднее. Общий же синтаксис таков:
var fso = new ActiveXObject ("Scripting.FileSystemObject");
var x = fso.методОбъекта(параметры);
var у = х.свойство(параметры) var z = х.метод(параметры)
Например, для получения информации о свободном пространстве на диске С следует выполнить следующий код:
// Ссылка на FSO var fso = new ActiveXObject ("Scripting.FileSystemObject"); // Ссылка на объект с характеристиками диска С var d = fso.GetDrive("C"); // Значение свободного пространства в байтах var freespace = d.FreeSpace; // Вывод сообщения Wscript.Echo(freespace);
Обратите внимание, что ряд методов FSO разбивается на две группы: Get-методы и Create-методы. Названия методов из той или иной группы начинаются либо с Get, либо с Create. Get-методы предназначены для получения ссылок на уже существующие объекты (get — получить). Create-методы предназначены для создания объектов (create — создать). Однако методы создания возвращают ссылку на созданный объект. Поэтому если вы создали объект Create-методом, а затем вам нужна ссылка на него, то лучше сохраните ссылку, возвращаемую Create-методом в переменной для дальнейшего использования, а не применяйте Get-метод. Окончательно понять смысл всех этих наставлений вы сможете, когда столкнетесь с написанием программы, в которой необходимо то создавать объекты файловой системы, то получать информацию о них. Общее правило следующее: Get-методы работают для уже существующих объектов, а Create-методы, кроме создания новых объектов, обеспечивают вам и доступ к этим новым объектам, такой же как и Get-методы.
На следующем шаге мы рассмотрим работу с дисками.