Open Statement
Открывает канал данных.
Open FileName As String [For Mode] [Access IOMode] [Protected] As [#]FileNumber As Integer [Len = DatasetLength]i37502
FileName: Name and path of the file to open. If you try to read a file that does not exist (Access = Read), an error message appears. If you try to write to a file that does not exist (Access = Write), a new file is created.
Режим: ключевое слово, указывающее файловый режим. Допустимые значения: 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