ASP FSO文件操作函数代码复制文件、重命名文件、删除文件、替换字符串

FSO文件(File)对象属性 

DateCreated 返回该文件夹的创建日期和时间 

DateLastAccessed 返回最后一次访问该文件的日期和时间 

DateLastModified 返回最后一次修改文件的日期和时间 

Drive 返回该文件所在的驱动器的Drive对象 

Name 设定或返回文件的名字 

ParentFolder 返回该文件的父文件夹的Folder对象 

Path 返回文件绝对路径,可使用长文件名 

ShortName 返回DOS风格的8.3形式的文件名 

ShortPath 返回DOS风格的8.3形式的文件绝对路径 

Size 返回该文件的大小(字节) 

Type 如果可能,返回一个文件类型的说明字符串 

FSO文件(File)对象方法 

FSO文件对象方法 用途 

copyFile 拷贝一个或者多个文件到新路径 

CreateTextFile 创建文件并且返回一个TextStream对象 

DeleteFile 删除一个文件 

OpenTextFile 打开文件并且返回TextStream对象,以便读取或者追加 

重命名文件: 

Function reName(sourceName,destName) 

dim oFso,oFile 

set oFso=server.createobject("Scripting.FileSystemObject") 

set oFile=oFso.getFile(Server.mappath(sourceName)) 

oFile.Name=destName 

Set oFso=nothing 

Set oFile=nothing 

End Function 

删除文件: 

Function FSOdel(fileName) 

dim fso,f 

set fso = server.CreateObject("scripting.filesystemobject") 

f=server.MapPath(fileName) 

if fso.FileExists(f) then 

fso.DeleteFile f,true 

end if 

set f = nothing 

set fso = nothing 

End Function 

替换文件中的字符串: 

Function FSOreplace(fileName,Target,repString) 

Dim objFSO,objCountFile,FiletempData 

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

Set objCountFile = objFSO.OpenTextFile(Server.MapPath(fileName),1,True) 

FiletempData = objCountFile.ReadAll 

objCountFile.Close 

FiletempData=Replace(FiletempData,repString) 

Set objCountFile=objFSO.CreateTextFile(Server.MapPath(fileName),True) 

objCountFile.Write FiletempData 

objCountFile.Close 

Set objCountFile=nothing 

Set objFSO = nothing 

End Function 

<% 

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

'函数名: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(p@R_404_6460@mFilePath) 

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

Set Fso_Read = fso.OpenTextFile(Server.MapPath(p@R_404_6460@mFilePath),false,-2) 

getFile = Fso_Read.readall 

Set Fso_Read = nothing 

Set Fso = nothing 

End Function 

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

'函数名:CreateFile(p@R_404_6460@mFileContent,p@R_404_6460@mFilePath) 

'作 用: 创建文件 

'参 数:p@R_404_6460@mFileContent '文件内容 

' p@R_404_6460@mFilePath '文件名(不包括路径) 

'返回值:成功 true,失败 false 

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

Function CreateFile(p@R_404_6460@mFileContent,p@R_404_6460@mFilePath) 

On Error Resume Next 

Dim Fso,fWrite 

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

Set fWrite = Fso.CreateTextFile(Server.Mappath(p@R_404_6460@mFilePath),true) 

fWrite.write p@R_404_6460@mFileContent 

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,"")="" 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,"")="" 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,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 

%> 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。