Тверской государственный университет
Опубликован: 13.09.2006 | Доступ: свободный | Студентов: 3491 / 369 | Оценка: 4.65 / 4.29 | Длительность: 30:37:00
Специальности: Программист, Менеджер
Лекция 8:

Операторы

< Лекция 7 || Лекция 8: 123456 || Лекция 9 >

Работа с каталогами, папками и файлами

Операторы этой группы позволяют перемещать текущий каталог (папку) по дискам системы, создавать новые и удалять каталоги (папки): изменять атрибуты файлов, копировать и удалять файлы. Их набор по существу совпадает с набором соответствующих команд операционной системы.

Изменение текущего диска: оператор ChDrive

Синтаксис:

ChDrive диск

Обязательный параметр диск - это строка, задающая имя существующего диска, который должен стать текущим, например:

ChDrive "D"

сделает диск "D" текущим.

Изменение текущего каталога (папки): оператор ChDir

Синтаксис:

ChDir путь

Обязательный параметр путь - это строковое выражение, значение которого задает новый текущий каталог (папку). Если путь не содержит имени диска, меняется текущий каталог на текущем диске. Подчеркнем, что оператор ChDir меняет текущий каталог (папку), но не диск. Например, если текущим является диск С, команда:

ChDir "D:\TMP"

изменит текущий каталог на диске D, но диск C останется текущим.

Создание каталога (папки): оператор MkDir

Синтаксис:

MkDir путь

Обязательный параметр путь - это строковое выражение, значение которого задает новый создаваемый каталог (папку). Если путь не содержит имени диска, каталог создается на текущем диске. В следующем примере на диске F создаются три новых каталога (папки):

Public Sub Dirs()
	'Сделать текущим диск F
	ChDrive "F"
	'Создать 3 каталога на F
	MkDir "Temp1"
	MkDir "F:\Temp2"
	MkDir "F:Temp3"
End Sub
Переименование каталогов (папок) и файлов: оператор Name

Позволяет переименовывать каталоги (папки) и файлы и перемещать файлы.

Синтаксис:

Name СтароеИмя As НовоеИмя

СтароеИмя и НовоеИмя - обязательные параметры, задающие старое и новое имя файла (каталога, папки). Они могут включать имя диска и путь. СтароеИмя должно быть именем существующего файла (каталога, папки), а НовоеИмя не должно быть именем уже существующего объекта. Оба имени должны использовать один и тот же диск. Если указанный новый путь существует и отличается от старого, оператор перемещает файл в новый каталог (папку) и, если требуется, переименовывает его. Каталоги и папки с помощью оператора Name перемещать нельзя, - лишь переименовывать. Перед переименованием файл должен быть закрыт.

В этом примере файл переименовывается, а затем и перемещается в другой каталог:

Public Sub DirsAndFiles()
	'Сделать текущим диск F
		ChDrive "F"
		'Переименование файла
		Name "Exam1E.xls" As "Example1.xls"
		'Перемещение файла
		Name "Example1.xls" As "Temp1\Example1.xls"
End Sub
Удаление каталога (папки): оператор RmDir

Синтаксис:

RmDir путь

Аргумент путь - строковое выражение, задающее удаляемый каталог или папку. Нельзя удалять каталог или папку, содержащие файлы (иначе будет выдано сообщение об ошибке). Чтобы удалить все файлы из каталога (папки), используйте оператор Kill.

RmDir "Temp3"

удалит папку Temp3 с текущего диска.

Установка атрибутов файла: оператор SetAttr

Синтаксис:

SetAttr имяфайла, атрибуты

Первый параметр имяфайла - строковое выражение, задающее имя файла, у которого требуется изменить атрибуты. Оно может включать имя диска и путь по каталогам (папкам). Параметр атрибуты - константа или числовое выражение, определяющее новые атрибуты файла в соответствии с таблицей:

Таблица 7.1. Атрибуты файла
Имя константы Значение Описание
VbNormal 0 Нормальный (по умолчанию)
vbReadOnly 1 Только для чтения
VbHidden 2 Скрытый
VbSystem 4 Системный файл
VbArchive 32 Файл изменен со времени последнего создания резервной копии

Нельзя менять атрибуты открытого файла (иначе будет выдано сообщение об ошибке).

Копирование файлов: оператор FileCopy

Синтаксис:

FileCopy файл-источник, файл-результат

Параметр файл-источник - строковое выражение, задающее имя копируемого файла, Файл-результат - строковое выражение, которое определяет имя результирующего файла. Оба имени могут включать имена дисков, каталогов или папок. Открытый в данный момент файл копировать нельзя.

Пример:

'Копирование файла
		FileCopy "Temp1\Example1.xls", "Temp2\Example1.xls"
Удаление файлов: оператор Kill

Синтаксис:

Kill файл

Параметр файл - строковое вырыжение, задающее имя удаляемого файла. Он может включать имя диска и путь по каталогам или папкам. Для удаления нескольких файлов можно использовать в образце имени файла символ '*' для обозначения произвольной последовательности букв и '?' - для обозначения одного символа. Нельзя удалять открытый в данный момент файл.

Пример.

Допустим, в текущем каталоге находятся файлы PROG.DOC, PROG.CPP и PROG.OBJ. Тогда оператор:

Kill "PROG.*"

удалит эти файлы с диска.

< Лекция 7 || Лекция 8: 123456 || Лекция 9 >
полина есенкова
полина есенкова
Дмитрий Вологжин
Дмитрий Вологжин
Добрый день, прошел тесты с 1 по 9, 10 не сдал, стал читать лекцию и всё пройденные тесты с 1 по 9 сбросились, когда захотел пересдать 10 тест.