有一个程序,每秒钟要判断10来次文件夹是否存在,如果不存在,则创建
我是用下列代码实现的:Dim nFSO As New FileSystemObject, nFolder As Folder
            
TempPath = "C:\" + FolderStringIf Not nFSO.FileExists(TempPath) Then
       Set nFolder = nFSO.CreateFolder(TempPath)
End IfFolderString是一个变量,时刻变化的!谢谢高手发表意见!

解决方案 »

  1.   

    用dir函数就可以了,用fso对象的话,要注意及时释放资源,即把下面两句加入到你的代码后:
    Set nFolder =nothing
    set nFSO =nothing
      

  2.   

    楼上注意了,这可是判断文件夹的,Dir怎么用?我也遇到这个问题,用VB内置的函数,很机械的办法了,不好意思贴出来。请楼上谈一下怎样判断一个文件夹是否存在?
      

  3.   

    MyPath = "c:\"   ' 指定路径。
    MyName = Dir(MyPath, vbDirectory)   ' 找寻第一项。
    if MyName <> "" then 
      MkDir MyPath '没有就创建
    end if
    都是用的内部函数,不一定非要使用外部的引用,外部的引用功能多,但是速度就不一定高了~~
      

  4.   

    MyPath = "c:\MyFolder"   ' 指定路径。
    MyName = Dir(MyPath, vbDirectory)   ' 找寻第一项。
    if MyName <> "" then 
      MkDir MyPath '没有就创建
    end if对不起——上边的程序无法创建C:\的,呵呵~~
      

  5.   

    Set nFolder =nothing
    set nFSO =nothing呵呵,谢谢各位,我知道了,需要释放资源!但是如果我不释放资源,是不是时间长了系统就会很慢啊?还有,一个程序模块里定义的变量需要释放么?是不是程序模块执行完了会自动释放啊?
      

  6.   

    感谢lovingkiss,有一句写错了dim MyPath as string,MyName as string
    MyPath = "c:\MyFolder"   ' 指定路径。
    MyName = Dir(MyPath, vbDirectory)   ' 找寻第一项。
    if MyName ="" then 
      MkDir MyPath '没有就创建
    end if