编程中处理文件是一项基本且常用的技能,几乎每种编程语言都提供了文件操作的功能。这里我将以一个较为通用的方式介绍文件操作的基本概念和步骤。
文件操作的基本概念
文件操作主要包括以下几个步骤:
- 打开文件:使用编程语言的文件打开函数或方法打开指定的文件。
- 读写文件:对打开的文件进行读取或写入操作。
- 关闭文件:完成文件操作后,关闭文件以释放系统资源。
文件操作的模式
在打开文件时,通常需要指定一个模式(mode),该模式决定了文件是用于读取、写入还是其他操作。常见的模式有:
'Read':只读模式(默认)。如果文件不存在,抛出错误。'Write':写入模式。如果文件已存在则覆盖,如果文件不存在则创建。'Lock':排他性创建模式。如果文件已存在,则抛出错误。'Append':追加模式。如果文件存在,则在其末尾追加内容;如果文件不存在,则创建新文件。'Binary':二进制模式。FB语句例题
'创建一个字符串并填充它。
Dim buffer As String, f As Integer
buffer = "一个文件中的Hello World。"
'获取文件号。
f = FreeFile
'打开文件“file.ext”进行二进制使用,使用文件号“f”。
Open "file.ext" For Binary As #f
If Err>0 Then
Print "打开文件时出错"
end if
'将我们的字符串放在文件中,使用数字“f”。
Put #f, , buffer
'关闭所有打开的文件。
Close
end if
直接使用VFB封装函数
读写文件还是比较繁琐的,我们使用封装函数,可以简单方便的使用。
- 读取文件
文件内容= GetFileStr(带路径的文件名)
- 写入文件
SaveFileStr(带路径的文件名,文件内容)
- 判断文件是否存在
if AfxFileExists(带路径的文件名) then 文件存在 else 文件不存在
if AfxFolderExists(文件夹) then 文件夹存在 else 文件夹不存在
配置文件
通常我们会将软件配置、选项等保存到文件中,软件开启后读取这些配置和选项。
配置通常扩展名是 INI ,那样在WIn系统中,也能直接打开查看。
- 读取配置
aa = INI_GetKey(app.path & "配置.ini","节名",“键名”,"默认值") - 保存配置
INI_SetKey(app.path & "配置.ini","节名",“键名”,"值")节名 如同分类一样,保存的配置会把同一个“节名”保存在一起
键名 在同一个“节名”下,是唯一的名字,依靠此名保存和读取内容
默认值 当读取时,不存在内容,就返回默认值其它封装函数
文件和文件夹相关的封装函数非常多,以下列举几个函数,想看全部函数的,进VFB里共库查看。
- GetDIR
获取所有文件,包括文件夹,返回对象数,返回0表示失败或无文件。Dim lName() As WIN32_FIND_DATAW ,i As Long ,tt As String PrintA GetDIR("c:\*.*" ,lName()) For i = 0 To UBound(lname) If (lname(i).dwFileAttributes And fbDirectory) <> 0 Then tt = "- 目录" Else tt = " - 文件" If (lname(i).dwFileAttributes And fbReadOnly) <> 0 Then tt &= ", 只读" If (lname(i).dwFileAttributes And fbHidden) <> 0 Then tt &= ",隐藏" If (lname(i).dwFileAttributes And fbSystem) <> 0 Then tt &= ",系统" If (lname(i).dwFileAttributes And fbArchive) <> 0 Then tt &= ",存档" PrintA i ,lname(i).cFileName ,tt Next
评论一下?