首页后端开发ASP.NETASP如何检测某文件夹是否存在,不存在则自动创建

ASP如何检测某文件夹是否存在,不存在则自动创建

时间2024-02-07 18:22:03发布访客分类ASP.NET浏览585
导读:收集整理的这篇文章主要介绍了ASP如何检测某文件夹是否存在,不存在则自动创建,觉得挺不错的,现在分享给大家,也给大家做个参考。 直接给大家分享一下测试正常可以使用的代码,并且支持多级目录...
收集整理的这篇文章主要介绍了ASP如何检测某文件夹是否存在,不存在则自动创建,觉得挺不错的,现在分享给大家,也给大家做个参考。

直接给大家分享一下测试正常可以使用的代码,并且支持多级目录创建

代码一

 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

使用方法:

CreateMultiFolder("/202003/tools/")

代码二、测试ok

'自动创建多极目录'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

测试代码

createit("/202004/tools/")

以上代码如果无法运行,请检查iis运行用户的权限是否有写功能。今天测试的时候默认iis7.5下是无法运行的。

下面的实现代码功能性简单,适合学习

ASP如何检测某文件夹是否存在,不存在则自动创建folder=server.mappath("/imagess") Set fso = CreateObject("Scripting.FileSystemObject") if fso.fileexists(Server.mappath(filepath)) then respnse.write("都有了还建什么建") else fso.createfolder(folder) end if Set fso = nothingDim objFSO Set objFSO = Server.CreateObject("Scripting.FileSystemObject") If objFSO.FolderExists(Server.MapPath(SavePath))=false Then objFSO.CreateFolder(Server.MapPath(SavePath)) End Iffolder=server.mappath("/imagess") Set fso = CreateObject("Scripting.FileSystemObject") if fso.fileexists(Server.mappath(filepath)) then respnse.write("都有了还建什么建") else fso.createfolder(folder) end if Set fso = nothing  

都不完善,我想楼主的意思是创建无极深度目录吧,给个我写的: 

'创建新文件夹(允许无级创建)1:35 2005-1-31 Public Function CreateFolder(FolderPath) Dim sObjFSO Dim arrFolder Dim i Set sObjFSO = Server.CreateObject("Scripting.FileSystemObject") FolderPath = Replace(FolderPath,"\","/") arrFolder = Split(FolderPath,"/") On Error Resume Next For i = 0 To UBound(arrFolder) If i >
     0 Then arrFolder(i) = arrFolder(i-1) &
     "/" &
     arrFolder(i) If Not sObjFSO.FolderExists(arrFolder(i)) Then sObjFSO.CreateFolder(arrFolder(i)) End If Next CreateFolder = True If Err.number >
     0 Then CreateFolder = False Err.Clear End If End Function 

创建文件夹

dim fso,SavePathSavePath=server.MapPath(".\"&
    imagefile&
    "\"&
    username&
    "\"&
    sPEcialname&
    "")set fso = server.CreateObject("scripting.filesystemobject") if fso.FolderExists(SavePath)=false then fso.createfolder(SavePath) end ifset fso=nothing

删除文件夹

dim fso,SavePathSavePath=server.MapPath(".\"&
    imagefile&
    "\"&
    username&
    "\"&
    specialname&
    "")set fso = server.CreateObject("scripting.filesystemobject") if fso.FolderExists(SavePath)=true then fso.deletefolder(SavePath) end ifset fso=nothing

复制文件

dim fsoset fso=server.CreateObject("scripting.filesystemobject")sub copyfiles(path,path2) set mycopy=fso.getfile(path) response.flush() mycopy.copy path2 response.write("b>
    installed success !&
    nbsp;
    &
    nbsp;
    /b>
    "&
    path2&
    "br>
    ") response.Flush() end subcall copyfiles(Server.MapPath("../无标题2.bmp"),"D:\网站项目\photo\aspupload\07_images\")

下面是其他网友的补充 

Public Function CheckAndCreateFolder(FolderName)  fldr = Server.Mappath(FolderName)  Set fso = CreateObject("Scripting.FileSystemObject")  If Not fso.FolderExists(fldr) Then   fso.CreateFolder(fldr)  End If  Set fso = NothingEnd Function

 检查文件夹是否存在,不存在则创建文件夹,该函数无返回值。

例:CheckAndCreateFolder("ASP")

检查当前目录下是否存在ASP文件夹,不存在则创建文件夹ASP ,缺点是不支持多级目录创建。

 asp关于fso函数,文件与文件夹的相关操作用得到

'//提供文件处理通用接口Class FileSystemObject'/*' * 功能描述:删除文件' * 输入参数:FileName——文件相对路径'*/Public Function DelFile(FileName) Dim getPath getPath="/" SET Fso=Server.CreateObject("Scripting.FileSystemObject") getPath=Replace(getPath&
    FileName,"//","/") if Fso.FileExists(Server.MapPath(getPath))=True then   Fso.DeleteFile Server.mappath(getPath) End if Set Fso=NothingEnd Function '/*' * 功能描述:判断路径是否存在,如不存在则创建' * 输入参数:SaveFilePath——相对路径,如:/UploaDFiles/NewsFiles'*/Public Function CreatePath(SaveFilePath) Dim DeclarePath,FileObj,FilePath DeclarePath="/"  Set FileObj=Server.CreateObject("Scripting.FileSystemObject")  For each FilePath in split(SaveFilePath,"/")    DeclarePath=Replace(DeclarePath&
    FilePath&
    "/","//","/")    if FileObj.FolderExists(Server.MapPath(DeclarePath))=false then      FileObj.CreateFolder(Server.MapPath(DeclarePath))'创建文件夹   end if Next  Set FileObj=nothing CreatePath=DeclarePathEnd Function '/*' * 功能描述:重命名文件夹' * 输入参数:GetPath——文件夹路径' * 输入参数:OldName——旧的文件夹名称' * 输入参数:NewName——新的文件夹名称'*/Public Function RenFolder(GetPath,OldName,NewName)  Dim Fso if OldName="" or NewName="" then   exit Function else   if OldName=NewName then exit Function end if SET Fso=Server.CreateObject("Scripting.FileSystemObject") if Fso.FolderExists(Server.MapPath(GetPath&
    NewName)) then   response.write"script language=javascript>
    alert('目录已经存在!!');
    this.history.go(-1);
    /script>
    "   response.end() end if '//旧的文件夹不存在,则创建 if Not Fso.FolderExists(Server.MapPath(GetPath&
    OldName)) Then   CreatePath(GetPath&
    OldName) End if  Fso.MoveFolder Server.MapPath(GetPath&
    OldName),Server.MapPath(GetPath&
    NewName) set Fso=nothing 'response.redirect request.ServerVARiables("HTTP_REFERER")End Function '/*' * 功能描述:保存当前文件' * 输入参数:GetPath——文件路径' * 输入参数:GetContent——保存的内容' * 输入参数:GetFile——保存的文件名'*/Public Function SaveEditFile(GetPath,GetContent,GetFile) if GetContent="" or GetFile="" then exit Function SET Fso=Server.CreateObject("Scripting.FileSystemObject") set CF=Fso.CreateTextFile(Server.mappath(GetPath&
    GetFile),true) CF.write GetContent CF.Close set CF=nothing set Fso=nothing 'response.redirect request.ServerVariables("HTTP_REFERER")End FunctionEnd Class

以上就是ASP如何检测某文件夹是否存在,不存在则自动创建的详细内容,更多关于ASP如何检测某文件夹是否存在的资料请关注其它相关文章!

您可能感兴趣的文章:
  • asp 判断上传文件中是否存在危险代码
  • ASP检查文件与目录是否存在的函数代码
  • asp判断某个文件是否存在的函数

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: ASP如何检测某文件夹是否存在,不存在则自动创建
本文地址: https://pptw.com/jishu/604394.html
ASP中常用的22个FSO文件操作函数整理 ASP中格式化时间短日期补0变两位长日期的方法

游客 回复需填写必要信息