Указывает, что файл или устройство будет открыто в двоичном(бинарном) режиме
Синтаксис
Open filename for Binary [Access access_type] [Lock lock_type] as [#]filenum
Параметры
filename
имя файла, чтобы открыть
access_type
показывает, как файл может быть открыт: для чтения,
записи или того и другого
lock_type
блокировка, которая будет использоваться в то время как
файл открыт
filenum
неиспользуемый(свободный) номер файла , который будет
ассоциирован с открытым файлом
Описание
Открывает файл или устройство для чтения и / или записи двоичных данных в
файл
filenum, с свободным форматом.
Если файл не существует, новый файл будет создан. Указатель файла
инициализируется при вызове
Open в
позиции 1.
Файловые операции
Get # и
Put #
перемещают указатель файла в соответствии с размером данных; указатель может
быть установлен на любом байте в файле.
Существующие данные в файле сохраняются при вызове
Open.
В этом режиме файла, можно использовать любой буфер переменной для чтения /
записи данных в файл.
Данные сохраняются в двоичном режиме, в том же внутреннем формате, который
использует FreeBASIC с помощью
Get #
и
Put #.
filename должно быть строковым выражением имени файла в целевой
ОС, без шаблонов. Файл ищется в текущем каталоге, если путь не указан.
Access_type По умолчанию режим
Random
позволяет читать и писать в файл, если только спецификатор
Access
явно не указывает на определенный доступ :
- Read - файл открывается только для ввода
- Write - файл открывается только для вывода
- Read Write - файл открывается для ввода и вывода (по
умолчанию)
Lock_type указывает блокировку файла для других процессов (пользователей или потоков). Может быть:
- Shared - файл может быть свободно доступен для
других процессов
- Lock Read - файл не может быть открыт одновременно для
чтения
- Lock Write - файл не может быть открыт одновременно для
записи
- Lock Read Write - файл не может быть открыт одновременно
другими процессами.
Если тип блокировки не указан, то файл будет
Shared
для других потоков программы и
Lock Read Write для
других программ.
Lock и
Unlock
могут быть использованы для временного ограничения доступа к части
файла.
filenum является допустимым FreeBASIC номером файла (в
диапазоне
1..255) , не используемым для любого другого открытого
файла в настоящее время. Это число определяет файл для остальной части
файловых операций. Свободный файловый номер можно получить с помощью функции
FreeFile.
Пример
'' Создать двоичный файл данных с одним числом в нем
Dim x As Single = 17.164
Open "MyFile.Dat" For Binary As #1
'' Put без
настройки положения запишет значение в последнем
известном положении файла
'' в нашем
случае, в самом начале файла.
Put #1, , x
Close #1
'' Теперь прочитаем число из файла
Dim x As Single = 0
Open "MyFile.Dat" For Binary As #1
Get #1, , x
Close #1
Print x
'' Читаем все содержимое файла в строку
Dim txt As String
Open "myfile.txt" For Binary Access Read As #1
If LOF(1) > 0 Then
'' Наша строка имеет столько
символов, сколько файл в байтах
txt = String(LOF(1), 0)
'' размер TXT известен. вся
строка заполняется данными файла
Get #1, , txt
End If
Close #1
Print txt
Отличия от QB
См. также