指定打开二进制模式的文件或设备
语法
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 默认情况下,
Binary模式允许读取和写入文件,除非指定了
Access类型,它是以下之一:
- Read - 仅打开文件以进行输入
- Write - 文件仅打开输出
- Read Write - 文件被打开输入和输出(默认)
Lock_type 指示其他进程(用户或线程)锁定文件的方式,它是以下之一:
- Shared - 文件可以被其他进程自由访问
- Lock Read - 无法同时打开文件进行阅读
- Lock Write - 无法同时打开文件进行写入
- Lock Read Write - 其他进程无法同时打开该文件。
如果没有指定锁定类型,该文件将为程序的其他线程
Shared和其他程序的
Lock Read Write.
Lock和
Unlock可用于限制对文件部分的临时访问。
filenum 是一个有效的文件编号(范围
1..255)不用于当前打开的任何其他文件。文件编号标识其余文件操作的文件。可以使用
FreeFile功能找到一个免费的文件编号。
例子
''创建一个带有一个数字的二进制数据文件
Dim x As Single = 17.164
Open "MyFile.Dat" For Binary As #1
''放置没有位置设置将放在最后一个已知的文件位置
''在这种情况下,该文件的最开始。
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差别
参考