asp常用文件操作函数(一)

<%
    
    '*******************************************************
    '函数名:CreateFolder(sPath)
    '作  用: 创建目录
    '参  数:sPath : 创建的相对目录路径
    '返回值:成功 true , 失败 false
    '*******************************************************
    'response.Write createfolder("/dgsunshine/UploadFile/demo1/")
    Function CreateFolder(sPath)
        On Error Resume Next
        
        Dim Fso,Arrfolder,Folder,i,j    

        If sPath="" then
            CreateFolder = False
            Exit Function
        End If
        
        If Left(sPath,1) = "/" Then
            Folder = "/"
            sPath = Mid(sPath,2,Len(sPath))
        Else
            Folder = "./"
        End If
        
        if Right(sPath,1) = "/" then sPath = Left(sPath,Len(sPath)-1)

        ArrFolder = Split(sPath,"/")
        
        Set Fso = Server.CreateObject("Scripting.FileSystemObject")
        
        For i = 0 To Ubound(ArrFolder)
            If i = 0 then
                Folder = Folder & ArrFolder(i) & "/"
            Else
                Folder = Folder & ArrFolder(i) & "/"
            End If

            If Fso.folderExists(Server.MapPath(Folder)) = False then
                response.Write server.MapPath(folder)
                Fso.createFolder(Server.MapPath(Folder))
            End If
            
        Next
        Set Fso = nothing
        
        If Err.Number <> 0 then
            Err.clear()
            CreateFolder = False
        Else
            CreateFolder = True
        End If
    End function


    Function getFile(paramFilePath)
        Set Fso = Server.CreateObject("Scripting.FileSystemObject")
        Set Fso_Read = fso.OpenTextFile(Server.MapPath(paramFilePath),1,false,-2)
        getFile = Fso_Read.readall
        Set Fso_Read = Nothing
        Set Fso = Nothing
    End Function
    
    '*******************************************************
    '函数名:CreateFile(paramFileContent,paramFilePath)
    '作  用: 创建文件
    '参  数:paramFileContent  '文件的内容
    '        paramFilePath     '文件名(不包括路径)
    '返回值:成功 true , 失败 false
    '*******************************************************
     Function CreateFile(paramFileContent,paramFilePath)
        On Error Resume Next
        Dim Fso,fWrite

        Set Fso = Server.CreateObject("Scripting.FileSystemObject")
        Set fWrite = Fso.CreateTextFile(Server.Mappath(paramFilePath),true)

        fWrite.write paramFileContent
        fWrite.close()
        Set fWrite = nothing
        Set Fso = nothing

        If Err.number <> 0 Then
            Err.clear()
            CreateFile = False
        Else
            CreateFile = True
        End If  
    End Function
    
    '*******************************************************
    '函数名:DelFile(FilePath)
    '作  用: 删除文件
    '参  数:FilePath  '文件路径 多个文件用"|"隔开
    '返回值:成功 true , 失败 false
    '*******************************************************
    Function DelFile(FilePath)
        On Error Resume Next
        Dim fso,arrFile,i
        
        If GetSafeStr(FilePath,"")="" then
            CreateFolder = false
            Exit Function
        End If
        
        arrFile = Split(FilePath,"|")
        Set Fso = Server.CreateObject("Scripting.FileSystemObject")
        
        for i=0 to UBound(arrFile)
            FilePath = arrFile(i)
            If Fso.FileExists(Server.MapPath(FilePath)) then
                Fso.DeleteFile Server.MapPath(FilePath)
            End If
        Next
        Set fso = nothing
        
        If Err then
            Err.clear()
            DelFile = false
        Else
            DelFile = true
        End If
    End Function
    
    '*******************************************************
    '函数名:DelFolder(FolderPath)
    '作  用: 删除目录
    '参  数:FolderPath '目录路径  '多个目录用"|"分隔
    '返回值:成功 true , 失败 false
    '*******************************************************
    Function DelFolder(FolderPath)
        On Error Resume Next
        Dim Fso,arrFolder,i
        
        If GetSafeStr(FolderPath,"")="" then
            DelFolder = false
            Exit Function
        End If
        
        arrFolder = Split(FolderPath,"|")
        Set Fso = Server.CreateObject("Scripting.FileSystemObject")
        
        For i=0 to UBound(arrFolder)
            FolderPath = arrFolder(i)
            If Fso.folderexists(Server.MapPath(FolderPath)) then
                Fso.deleteFolder Server.MapPath(FolderPath)
            End If
        Next
        
        If Err then
            Err.clear()
            DelFolder = false
            'ShowError "删除目录失败",""
        else
            DelFolder = true
        End If
    End Function


    '*******************************************************
    '函数名:IsExistFile(FilePath)
    '作  用: 判断文件或目录是否存在
    '参  数:FilePath  '文件路径 多个文件用"|"隔开
    '返回值:成功 true , 失败 false
    '*******************************************************
    Function IsExistFile(FilePath)
        On Error Resume Next
        Dim fso,arrFile,i

        If GetSafeStr(FilePath,"")="" then
            IsExistFile = false
        End If

        arrFile = Split(FilePath,"|")
        Set Fso = Server.CreateObject("Scripting.FileSystemObject")
        
        for i=0 to UBound(arrFile)
            FilePath = arrFile(i)
            If Fso.FileExists(Server.MapPath(FilePath)) then
                IsExistFile = True
            End If
            If Fso.folderexists(Server.MapPath(FilePath)) then
                IsExistFile = True
            End If
        Next
        Set fso = nothing
        
        If Err then
            Err.clear()
            IsExistFile = false
            'ShowError "判断文件或目录是否存在失败",""
        else
            IsExistFile = true
        End If
    End Function
    
    
    '*******************************************************
    '函数名:DelFile(FilePath)
    '作  用: 删除文件或目录
    '参  数:FilePath  '文件路径 多个文件用"|"隔开
    '返回值:成功 true , 失败 false
    '*******************************************************
    Function DelFile(FilePath)
        On Error Resume Next
        Dim fso,arrFile,i
        
        If GetSafeStr(FilePath,"")="" then
            CreateFolder = false
        End If
        
        arrFile = Split(FilePath,"|")
        Set Fso = Server.CreateObject("Scripting.FileSystemObject")
        
        for i=0 to UBound(arrFile)
            FilePath = arrFile(i)
            If Fso.FileExists(Server.MapPath(FilePath)) then
                Fso.DeleteFile Server.MapPath(FilePath)
            End If
            If Fso.folderexists(Server.MapPath(FilePath)) then
                Fso.deleteFolder Server.MapPath(FilePath)
            End If
        Next
        Set fso = nothing
        
        If Err then
            Err.clear()
            DelFile = false
            'ShowError "删除文件或目录失败",""
        else
            DelFile = true
        End If
    End Function
    
    
    '*******************************************************
    '函数名:ReNameFile((oldName,newName)
    '作  用: 重命名文件或目录
    '参  数:strOldName  '原文件名 多个用"|"隔开
    '        strNewName  '新文件名 多个用"|"隔开
    '        上面两个参数请保持一致
    '返回值:成功 true , 失败 false
    '*******************************************************
    Function ReNameFile(strOldName,strNewName)
        On Error Resume Next
        Dim fso,arrOld,arrNew,i,oldName,newName
        
        old = GetSafeStr(strOldName,"")
        Newfile = GetSafeStr(strNewName,"")
        
        If old ="" or Newfile = ""  then
            ReNameFile = false
            Exit Function
        End If
        
        arrOld = Split(strOldName,"|")
        arrNew = Split(strNewName,"|")
        
        If UBound(arrOld)<> UBound(arrNew) then
            ReNameFile = false
            Exit Function
        End If
        
        Set Fso = Server.CreateObject("Scripting.FileSystemObject")
        for i=0 to UBound(arrOld)
            oldName = Server.MapPath(arrOld(i))
            newName = Server.MapPath(arrNew(i))
            If Fso.FileExists(oldName) and not Fso.FileExists(newName) then
                 fso.MoveFile oldName,newName
                 'ReNameFile = True
            End If
        Next
        Set fso = nothing
        
        If Err.Number <> 0  Then
            Err.clear()
            ReNameFile = false
        Else
            ReNameFile = True
        End If
    End Function

    
    '*******************************************************
    '函数名:CopyFiles((TempSource,TempEnd)
    '作  用: 复制文件或者目录
    '参  数:TempSource  '源文件名 多个用"|"隔开
    '        TempEnd     '目的文件名 多个用"|"隔开
    '        注意:上面两个参数请保持一致,并且都为完整路径,
           '       已经经过Server.MapPath方法处理过
    '返回值:成功 true , 失败 false
    '*******************************************************
    Function CopyFiles(TempSource,TempEnd)
        On Error Resume Next
        Dim CopyFSO,arrSource,arrEnd
        
        CopyFiles = false
        Set CopyFSO = Server.CreateObject("Scripting.FileSystemObject")
        
        If TempSource ="" or TempEnd = "" then
            ErrRaise "复制文件或目录","条件为空"
            CopyFiles = false
            Exit Function
        End If
        
        arrSource = Split(TempSource,"|")
        arrEnd    = Split(TempEnd,"|")
        If UBound(arrSource) <> UBound(arrEnd) then
            CopyFiles= false
            Exit Function
        End If
        
        for i=0 to UBound(arrSource)
            srcName = arrSource(i)
            tarName = arrEnd(i)
            IF  CopyFSO.FileExists(srcName)  and not CopyFSO.FileExists(tarName) then
               CopyFSO.CopyFile srcName,tarName
               CopyFiles = true
            End If
            
            IF CopyFSO.FolderExists(srcName) and not CopyFSO.FolderExists(tarName)then
               CopyFSO.CopyFolder srcName,tarName
               CopyFiles = true
            End If
        Next
        Set CopyFSO = Nothing
        
        If Err then
            'Err.clear()
            CopyFiles = false
        End If
    End Function
%>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值