实现代码一、比较专业看起来
'============================== '创建多级目录,可以创建不存在的根目录 '参数:要创建的目录名称,可以是多级 '创建目录的根目录从当前目录开始 '''调用举例 ''Call CreateMultiFolder("/upload/jumbot/myphoto/") '============================== Function CreateMultiFolder(ByVal CFolder) Dim objFSO, PhCreateFolder, CreateFolderArray, CreateFolder Dim i, ii, CreateFolderSub, PhCreateFolderSub, BlInfo BlInfo = False CreateFolder = CFolder On Error Resume Next Set objFSO = Server.CreateObject("Scripting.FileSystemObject") If Err Then Err.Clear() Exit Function End If If Right(CreateFolder, 1) = "/" Then CreateFolder = Left(CreateFolder, Len(CreateFolder) -1) End If CreateFolderArray = Split(CreateFolder, "/") For i = 0 To UBound(CreateFolderArray) CreateFolderSub = "" For ii = 0 To i CreateFolderSub = CreateFolderSub & CreateFolderArray(ii) & "/" Next PhCreateFolderSub = Server.MapPath(CreateFolderSub) If Not objFSO.FolderExists(PhCreateFolderSub) Then objFSO.CreateFolder(PhCreateFolderSub) End If Next If Err Then Err.Clear() Else BlInfo = True End If CreateMultiFolder = BlInfo End Function
上面的是循环
实现方法二、
'自动创建多极目录'code by jb51 reterryfunction createit(path)dim fsofo,cinfo,thepath,thepatharraydim i,ii,binfobinfo=falsethepath=pathset fsofo=createobject("scripting.filesystemobject")if err thenerr.clearexit functionend ifthepath=replace(thepath,"\","/")if left(thepath,1)="/" thenthepath=right(thepath,len(thepath)-1)end ifif right(thepath,1)="/" thenthepath=left(thepath,len(thepath)-1)end ifthepatharray=split(thepath,"/")for i=0 to ubound(thepatharray)createfoldersub1=createfoldersub1&thepatharray(i)&"/"createfoldersub=server.mappath(createfoldersub1)if not fsofo.folderexists(createfoldersub) thenfsofo.createfolder(createfoldersub)end ifnextif err thenerr.clearelsebinfo=trueend ifcreateit=binfoend function
下面的是通过正则实现
'============================== ''创建文件目录(多层) ''使用正则 '============================== Function Create_N_Folder(save, ByVal Path) Dim Fso Set Fso = Server.CreateObject("Scripting.FileSystemObject") If Not Fso.FolderExists(Path) Then Dim regEx Set regEx = New RegExp regEx.Pattern = "^(.*)\\([^\\]*)$" regEx.Global = False regEx.IgnoreCase = True save = save & regEx.Replace(Path, "$2") & "|" Path = regEx.Replace(Path, "$1") If Create_N_Folder(save, Path) Then Create_N_Folder = True Set regEx = Nothing Else If save = "|" Then Create_N_Folder = True Else Dim Temp Temp = Mid(save, 2, Len(save) - 2) If InStrRev(Temp, "|") = 0 Then save = "|" Path = Path & "\" & Temp Else Dim Folder Folder = Mid(Temp, InStrRev(Temp, "|") + 1) save = "|" & Mid(Temp, 1, InStrRev(Temp, "|") - 1) & "|" Path = Path & "\" & Folder End If Fso.CreateFolder Path If Create_N_Folder(save, Path) Then Create_N_Folder = True End If End If Set Fso = Nothing End Function
以上就是asp中创建多级目录的两段代码的详细内容,更多关于asp创建多级目录的资料请关注脚本之家其它相关文章!