使用函数自动生成n层目录

  先检查是否已经存在该目录了,如果存在,则不做任何处理,如果不存在则创建。

  希望对各位快速开发有用。

  CheckFolder.asp

  <%

  '***********************************************************************************************************

  '作 者: 赵敏 [email protected]

  '页面名称: CreateFolder.asp

  '页面功能: 生成n层目录的文件夹

  '使用方法: 调用CheckFolder()函数,例如: CheckFolder(path)

  '传入参数: 即将上传的文件的相对路径,例如: path = "./upload/bbb/ccc/ddd"

  '缺 点: 必须在参数path里面带上upload文件夹

  '***********************************************************************************************************

  Sub CheckFolder(path)

  SplitPath(path)

  End Sub

  Sub SplitPath(path)

  dim Road '物理路径

  Road = Server.Mappath("./upload")

  dim CurRoad '当前路径

  Road = Split(Road,"\",-1,1)

  CurRoad = Road(UBound(Road))

  dim folder,FSO

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

  folder = Split(path,"\",-1,1)

  for i = 0 to UBound(folder) step 1

  if folder(i) = CurRoad then

  j = i

  exit for

  end if

  Next

  i = j + 1

  if i <= UBound(folder) then

  dim myroad

  myroad = Server.MapPath(".\upload")

  for i = j + 1 to UBound(folder) step 1

  CreateFolder myroad,folder(i)

  myroad = myroad &"/"& folder(i)

  Next

  end if

  End Sub

  Sub CreateFolder(mypath,folderName)

  Dim fso,f

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

  if Not(fso.FolderExists(mypath+"/"+folderName)) then

  set f = fso.CreateFolder(mypath+"/"+folderName)

  end if

  End Sub

  Set fso = nothing

  %>