VB2005
If My.Computer.FileSystem.DirectoryExists("c:\123") Then
MsgBox("文件夹存在")
Else
MsgBox("文件夹不存在")
End If
VB6
If Dir("c:\123",vbDirectory) = "" Then
MsgBox("文件夹不存在")
Else
MsgBox("文件夹存在")
End If
我手边没VB6在VB2005下测试dir函数,获取文件夹的时候必须加上
FileAttribute.Directory,VB6的等效参数是vbDirectory,MSDN
上解释:如果省略,则 Dir 返回匹配 PathName 但没有属性的文件。
在XP的NTFS下文件夹是默认的只读类型,如果使用dir函数时省略参数
将无法返回指定的目录,但是在FAT32下是可以的
Dir("C:\boot.ini", 7)
1+2+4=7
attributes 参数的设置可为:
常数 值 描述
vbNormal 0 (缺省) 指定没有属性的文件。
vbReadOnly 1 指定无属性的只读文件
vbHidden 2 指定无属性的隐藏文件
VbSystem 4 指定无属性的系统文件
vbVolume 8 指定卷标文件;如果指定了其它属性,则忽略vbVolume
vbDirectory 16 指定无属性文件及其路径和文件夹。
Dim File1$, YF As Boolean
File1 = "c:file"
Set fso = CreateObject("Scripting.FileSystemObject")
YF = fso.FolderExists(File1)
If YF = True Then
.....
Else
.....
end if