FSO中有个方法是CreateFolder,但是这个方法只能在其上一级文件夹存在的情况下创建新的文件夹,所以我就写了一个自动创建多级文件夹的函数,在生成静态页面等方面使用非常方便.



函数:



' --------------------------------

' 自动创建指定的多级文件夹

' strPath为绝对路径

' 引用请保留版权

' by im286_Anjer

' 2005-4-3

Function AutoCreateFolder(strPath) ' As Boolean

On Error Resume Next



Dim astrPath, ulngPath, i, strTmpPath

Dim objFSO



If InStr(strPath, "\") <=0 Or InStr(strPath, ":") <= 0 Then

AutoCreateFolder = False

Exit Function

End If

Set objFSO = Server.CreateObject("Scripting.FileSystemObject")

If objFSO.FolderExists(strPath) Then

AutoCreateFolder = True

Exit Function

End If

astrPath = Split(strPath, "\")

ulngPath = UBound(astrPath)

strTmpPath = ""

For i = 0 To ulngPath

strTmpPath = strTmpPath & astrPath(i) & "\"

If Not objFSO.FolderExists(strTmpPath) Then

' 创建

objFSO.CreateFolder(strTmpPath)

End If

Next

Set objFSO = Nothing

If Err = 0 Then

AutoCreateFolder = True

Else

AutoCreateFolder = False

End If

End Function







调用方法:



MyPath = "C:\a\b\c\"

If AutoCreateFolder(MyPath) Then

Response.Write "创建文件夹成功"

Else

Response.Write "创建文件夹失败"

End If