Программирование FileSystemObject
Для программирования с использованием объектной модели FileSystemObject (FSO):
- Используйте метод CreateObject для создания объекта FileSystemObject
- Используйте нужный метод вновь созданного объекта
- Используйте свойства объекта
Объектная модель FSO содержится в
Scripting type library, которая находится в файле
Scrrun.dll. Поэтому вы должны иметь этот файл в соответствующей
системной директории на вашем веб-сервере, чтобы использовать FileSystemObject.
Создание объекта FileSystemObject
Сначала нужно создать объект FileSystemObject, используя метод
CreateObject. В VBScript используйте для примера следующий код:
Dim fso
Set fso = CreateObject("Scripting.FileSystemObject")
Scripting — это имя библиотеки типов, а
FileSystemObject —
это имя объекта, который нужно создать. Вы можете создать только один экземпляр объекта
FileSystemObject, независимо от того, как много раз вы будете пытаться создать другие объекты.
Использование подходящих методов
Далее вы можете использовать нужные методы объекта FileSystemObject. Например,
для создания нового объекта, используйте метод CreateTextFile или
CreateFolder (в объектной модели FSO не поддерживается создание или удаление дисков).
Для удаления объекта используйте методы DeleteFile и DeleteFolder
объекта FileSystemObject. Вы можете также копировать и перемещать файлы и папки, используя соответствующие методы.
ПРИМЕЧАНИЕ
Некоторые функции в объекте FileSystemObject являются излишними. Например,
вы можете использовать для копирования файла как метод CopyFile объекта
FileSystemObject, так и метод Copy объекта File.
Методы работают одинаково, но предоставлены для обеспечения гибкости программирования.
Доступ к существующим дискам, файлам и папкам
Чтобы получить доступ к дискам, папкам и файлам, используйте соответствующий get метод объекта FileSystemObject:
- GetDrive
- GetFolder
- GetFile
Пример организация доступа к существующему файлу в VBScript:
Dim fso, f1
Set fso = CreateObject("Scripting.FileSystemObject")
Set f1 = fso.GetFile("c:\test.txt")
Не используйте get метод для вновь создаваемых объектов, так как функции create
уже возвращают дескриптор объекта. Например, если вы создаёте новую папку, используя метод
CreateFolder, не используйте метод
GetFolder для доступа
к её свойствам, таким как имя, путь и размер. Просто присвойте результат выполнения
метода
CreateFolder переменной, чтобы получить дескриптор вновь
созданной папки, а затем получите её свойства, методы и события. Пример приведён ниже:
Sub CreateFolder
Dim fso, fldr
Set fso = CreateObject("Scripting.FileSystemObject")
Set fldr = fso.CreateFolder("C:\MyTest")
End Sub
Доступ к свойствам объекта
Однажды получив дескриптор объекта, вы можете получить его свойства.
Например, чтобы получить имя конкретной папки, сначала создайте экземпляр объекта,
затем получите дескриптор на объект с помощью соответствующего метода
(в нашем случае это метод GetFolder, так как папка уже существует).
Используйте этот код для получения дескриптора с помощью метода GetFolder:
Set fldr = fso.GetFolder("c:\Windows")
Теперь, когда вы имеете дескриптор объекта
Folder, вы можете проверить свойство
Name (Имя):
MsgBox "Имя папки: " & fldr.Name
Чтобы получить время последнего изменения файла, используйте следующий синтаксис:
Dim fso, f1
' Получиь объект File.
Set f1 = fso.GetFile("c:\Windows\desktop.ini")
' Вывести информацию.
MsgBox "Время последнего изменения файла: " & f1.DateLastModified