求VB中如何判断是否存在这个文件夹(存在,DIR智能判断有没有东西,我是说存在!!!!!!)
2个回答
展开全部
比如说要想知道d:\abc这个文件夹是否存在,可以这样:
If Dir("d:\abc\nul")<>"" Then
MsgBox "文件夹存在!"
Else
MsgBox "文件夹不存在!"
End If
If Dir("d:\abc\nul")<>"" Then
MsgBox "文件夹存在!"
Else
MsgBox "文件夹不存在!"
End If
追问
问题是 d:\abc\nul" 这个文件夹里面没东西 也显示不存在
追答
不是d:\abc\nul这个文件夹,而是d:\abc\这个文件夹!nul是一个虚拟设备名,是微软从DOS时代延续下来的一个东西,代表“不存在的设备”。如果d:\abc\这个文件夹存在(不管里面有没有文件),Dir("d:\abc\nul")返回"nul",否则返回空字符串。
事实上,在windows系统中,文件夹名(也包括文件名)是不可能命名为nul的,类似的还有PRN、LPT1、LPT2、COM1、COM2、COM3等,因为这些是设备名,或者说是端口号,比如并行打印口、串口等。你在程序中如果用这些名字创建“文件”,然后把数据保存到这个“文件”中,就相当于向这些端口连接的外部设备发送数据(比如直接在打印机中打印出来)。而“nul”代表“不存在的设备”,你把数据发送到nul,就等于把石头扔到无底洞中,换句话说就是什么也没发生。
从这一点可以看出,我的代码你根本就没试过,就想当然地认为不对。你可以拿其他文件夹试一下嘛,比如c:\windows\nul。注意哦,这最后面的nul就是精髓所在,不是我随意敲出的三个字母哦!
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询