服务器之家:专注于服务器技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|

服务器之家 - 编程语言 - ASP教程 - asp中创建多级目录的两段代码

asp中创建多级目录的两段代码

2019-10-18 10:52asp代码网 ASP教程

asp中创建多级目录的两段代码

代码如下:


        '============================== 
        '创建多级目录,可以创建不存在的根目录 
        '参数:要创建的目录名称,可以是多级 
        '创建目录的根目录从当前目录开始 
        '''调用举例 
        ''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


上面的是循环 
下面的是正则

复制代码代码如下:


        '============================== 
        ''创建文件目录(多层) 
        ''使用正则 
        '============================== 

        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

延伸 · 阅读

精彩推荐