Шаг 40 - Инструкция Open

Разрешает выполнение с файлом операций ввода/вывода.

Open путь For режим [Access доступ] [блокировка] As [#]номерФайла [Len=длина]

Параметры
путь
Обязательный. Строковое выражение, указывающее имя файла; может содержать имя каталога или папки и имя диска.
режим
Обязательный. Ключевое слово, указывающее режим файла: Append, Binary, Input, Output или Random. По умолчанию, файл открывается для доступа в режиме Random.
доступ
Необязательный. Ключевое слово, указывающее операции, разрешенные с открытым файлом: Read, Write или Read Write.
блокировка
Необязательный. Ключевое слово, указывающее операции, разрешенные с открытым файлом другим процессам: Shared, Lock Read, Lock Write и Lock Read Write.
номерФайла
Обязательный. Допустимый номер файла в интервале от 1 до 511 включительно. Для определения следующего свободного номера файла следует использовать функцию FreeFile.
длина
Необязательный. Число, меньшее либо равное 32 767 (байт). Для файлов, открытых в режиме Random, это значение является длиной записи. Для файлов с последовательным доступом это значение является числом буферизуемых символов.

Замечания
Чтобы получить возможность выполнить любую операцию ввода/вывода, файл необходимо открыть. Инструкция Open резервирует буфер ввода/вывода для файла и определяет режим использования этого буфера.
Если аргумент путь описывает несуществующий файл, такой файл будет создан при открытии в режиме Append, Binary, Output или Random.
Если файл уже открыт другим процессом и указанный режим доступа не разрешен, инструкция Open не будет выполнена и возникнет ошибка.
Если аргумент режим имеет значение Binary, предложение Len игнорируется.
В режимах Binary, Input и Random можно еще раз открыть уже открытый файл под другим номером, не закрывая его. В режиме Append и Output необходимо закрыть файл, чтобы получить возможность открыть его еще раз под другим номером.

Пример
В данном примере показаны различные способы использования инструкции Open, чтобы разрешить выполнение операций ввода/вывода с файлом.
Следующие инструкции открывают файл TESTFILE для последовательного чтения.

Open "TESTFILE" For Input As #1
' Закрывает файл перед повторным открытием в другом режиме.
Close #1

Следующие инструкции открывают файл в режиме Binary только для записи.

Open "TESTFILE" For Binary Access Write As #1
' Закрывает файл перед повторным открытием в другом режиме.
Close #1

Следующие инструкции открывают файл в режиме Random. Файл содержит записи определенного пользователем типа Record.

Type Record			' Тип, определенный пользователем.
	ID As Integer
	Name As String * 20
End Type

Dim MyRecord As Record		' Объявляет переменную.
Open "TESTFILE" For Random As #1 Len = Len(MyRecord)
' Закрывает файл перед повторным открытием в другом режиме.
Close #1

Следующие инструкции открывают файл для последовательного вывода; любой процесс может читать из этого файла или записывать в него.

Open "TESTFILE" For Output Shared As #1
' Закрывает файл перед повторным открытием в другом режиме.
Close #1

Следующие инструкции открывают файл в режиме Binary для чтения; другие процессы не могут читать этот файл.

Open "TESTFILE" For Binary Access Read Lock Read As #1

Предыдущий Шаг | Следующий Шаг | Оглавление
Автор Каев Артем.