一、在VB编程中,经常需要判断一个文件和文件夹是否存在,以便执行相应的操作,这可以用下列语句进行判断。
Dir ([PathName],[Attributes as VbFileAttribute = vbNormal]) asString
解释:PathName:文件或文件夹的绝对路径。
Attributes:文件的属性--默认值:vbNormal 是普通文件,vbHidden是隐藏文件,vbDirectory是文件夹。
"[]"内为可以选项。Dir(file)=""表示文件或文件夹不存,即文件或文件夹的实际路径文空。Dir(file)<>""表示文件或文件夹存在,即文件或文件夹实际路径不为空。
例如判断C:\Windows\System32\cmd.exe是否存在,如存在,就调用它,可用下列语句:
’文件存,利用Shell调用,默值为vbNormal
IfDir("C:\Windows\System32\cmd.exe")<>""Then
Shell "C:\Windows\System32\cmd.exe"
EndIf
如果判断的文件是隐藏文件,上面的语则无法判断出来,这时就需要加上后面的可选项目,例如
判断D盘根目录下是否有隐藏文件text.txt,就用下面的源代码:
If Dir("D:\text.txt",vbHidden)<>""Then
Msgbox "找到Text.txt隐藏文件"
End If
判断件夹是否存,与判断隐藏文件的方法一样,可用下列语句:
Dir("文件夹路径",vbDirectory)<>""
例如,要判断文件D:\Backup是否存在,源代码如下:
If Dir("D:\Backup",vbDirectory)<>""Then
Msgbox "文件夹:D:\Backup 存在!"
End If
二、在VB的编程,也会用到利用应程序时生成文件夹。可以利用下面的言句生成文件夹:
MkDir "文件夹路径"
例如:在应用程序根目录下,生成Backup文件夹。在生成之前先判断该文件夹否存在。
源代码如下:
Dim BackupPath As String
Select Case Right(App.Path,1)’判断路径是否包含’\’
case ’\’:
BackupPath = App.Path &"Backup"
case Else
BackupPath = App.Path &"\Backup"
End Select
If Dir(BackuPath,vbDirectory)="" Then’文件夹不存在
MkDirBackuPath
’在应用程序根目下,创建文件夹Backup
End If
Dir ([PathName],[Attributes as VbFileAttribute = vbNormal]) asString
IfDir("C:\Windows\System32\cmd.exe")<>""Then
EndIf
Dir("文件夹路径",vbDirectory)<>""
二、在VB的编程,也会用到利用应程序时生成文件夹。可以利用下面的言句生成文件夹:
源代码如下: