Інструкція Open
Відкриває канал даних.
Open FileName As String [For Mode] [Access IOMode] [Protected] As [#]FileNumber As Integer [Len = DatasetLength]i37502
Ім'я файлу: ім'я та шлях до файлу, який потрібно відкрити. При спробі відкриття файлу, якого не існує (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