Visual Basic 6. Руководство разработчика

Объект FileSystemObject


VBScript предоставляет несколько новых объектов, доступных из Visual Basic. Наиболее важным (с точки зрения программиста на VB) является объект FileSystemObject, предоставляющий доступ к файловой системе компьютера, на котором выполняется приложение. Visual Basic предлагает несколько функций и операторов для доступа и манипулирования файловой системой, но объект FileSystemObject является более гибким средством, обеспечивающим методы и свойства для доступа к каждому каталогу и файлу на диске.

Чтобы получить доступ к файловой системе компьютера, на котором выполня­ется приложение, создайте переменную FileSystemObject с помощью функции Create0bject().

Set FSys = CreateObject ("Scripting. FileSystemObject")

Переменная

FSys

представляет файловую систему и определяется как объект.

Dim FSys As Object

Чтобы получить доступ к текстовым файлам на диске, используйте методы объекта FileSystemObject, описанные ниже.

Это один из способов доступа к файловой системе компьютера из Windows-сценария. В Visual Basic существует лучший метод, использующий раннее связывание для ускорения работы приложения. Вы можете добавить ссылку на объект Microsoft Scripting Runtime, выбрав команду References меню Project для открытия диалого­вого окна References. Укажите элемент Microsoft Scripting Runtime и щелкните на кнопке ОК. Как только ссылка будет добавлена к проекту, можно объявить переменную FSys с помощью оператора

Dim FSys As New Scripting.FileSystemObject

или

Dim FSys As New FileSystemObject

В окне Code после введения имени переменной FSys появится список компо­нентов объекта Script, и можно будет выбрать необходимый объект.

Поэкспериментируем с объектом FileSystemObject. Откройте новый проект и поместите командную кнопку на его форму. В окне Code формы введите следующее определение.

Dim FSys As New Scripting.FileSystemObject

Введите следующий оператор в обработчик события Click командной кнопки.

Debug.Print FSys.FileExists ("C:\AUTOEXEC.BAT")


Если файл C:\AUTOEXEC.BAT существует, то строка "True" появится в окне проверки. Компонент FileExists переменной FSys - это метод, который возвращает значение True, если файл существует. В противном случае он возвращает значение False.

Объект FileSystemObject предоставляет свойства и методы для операций с файловой системой, включая создание новых текстовых файлов (или открытие уже существующих), чтение или запись в них. Visual Basic имеет собственные опе­раторы для доступа к текстовым файлам (и к двоичным), поэтому это подмножество объекта FileSystemObject не особенно интересно для программиста на VB. Они описаны здесь, потому что позволяют работать с текстовыми файлами при создании Windows-сценариев. Позже мы обсудим компоненты объекта FileSystemObject, которые полезны при написании Visual Basic-приложений и Windows-сценариев.

Операции чтения из текстовых файлов и записи в них являются основными при разработке сценариев Многие сценарии сохраняют свои результаты в текстовых файлах или считывают из них необходимые параметры (например, сценарии, обрабатывающие большое число файлов). Методы FileSystemObject для работы с текстовыми файлами также могут использоваться внутри сценариев в приложениях Visual Basic (см пример StatCIss ниже в этой главе).


Содержание раздела