IBM Lotus Symphony


Оператор Open [встроенный]

Открывает канал обмена данными.

Синтаксис:

Open имя-файла As String [For режим] [Access режим-ввода-вывода] [режим-совместного-доступа] As [#]номер-файла As Integer [Len = длина-набора-данных]

Параметры:

имя-файла — путь и имя открываемого файла. При попытке прочитать несуществующий файл (Access = Read) выводится сообщение об ошибке. При записи в несуществующий файл (Access = Write) создается новый файл.

режим — ключевое слово, определяющее режим работы с файлом. Допустимые значения: Append (добавление данных в конец последовательного файла), Binary (байтовый доступ к данным файла операторами Get и Put), Input (открытие канала для чтения данных), Output (открытие канала для записи данных), Random (изменение файла произвольного доступа).

режим-ввода-вывода — ключевое слово, определяющее тип доступа. Допустимые значения: Read (только чтение), Write (только запись), Read Write (чтение и запись).

режим-совместного-доступа — ключевое слово, определяющее режим совместного доступа к файлу после его открытия. Допустимые значения: Shared (другим программам разрешено открытие файла), Lock Read (другим программам запрещено чтение файла), Lock Write (другими программами запрещена запись в файл), Lock Read Write (другим программам запрещен доступ к файлу).

номер-файла — произвольное целочисленное выражение в диапазоне 0—511, обозначающее номер свободного канала обмена данными. По каналу обмена данными передаются команды доступа к файлу. Для получения номера файла непосредственно перед оператором Open должна вызываться функция FreeFile.

длина-набора-данных — длина записи (для файлов произвольного доступа).

Значок Примечание Можно изменять содержимое только файлов, открытых оператором Open. При открытии уже открытого файла выводится сообщение об ошибке.

Пример:

Sub ExampleWorkWithAFile

Dim iNumber As Integer

Dim sLine As String

Dim aFile As String

Dim sMsg as String

aFile = "c:\data.txt"

iNumber = Freefile

Open aFile For Output As #iNumber

Print #iNumber, "Это строка текста"

Print #iNumber, "Это другая строка текста"

Close #iNumber

iNumber = Freefile

Open aFile For Input As iNumber

While not eof(iNumber)

Line Input #iNumber, sLine

If sLine <>"" then

sMsg = sMsg & sLine & chr(13)

end if

wend

Close #iNumber

Msgbox sMsg

End Sub


Комментарии по продукту | Дополнительная документация | Товарные знаки