<%
'###################################################################################################################
'##
'## 作者:ROCK.Zhang
'## 联系:qq-294859246
'## 创建时间:2013-12-19
'## 更多信息请关注:www.goorder.net
'##
'## asp FSO 文件操作的方法和说明
'##
'## isFileExist(path,fileName)
'## 例如: isFileExist("new/version2.1/","index.html")
'## 表示: 当前路径/new/version2.1/ 路径下面的文件 index.html 是否存在
'## 返回值: true 和 false
'##
'## isFolderExist(path,fileName)
'## 例如: isFolderExist("new/version2.1/","package")
'## 表示: 当前路径/new/version2.1/package 文件夹是否存在
'## 返回值: true 和 false
'##
'## createFolder(path,folderName)
'## 例如: createFolder("","new")
'## 表示: 当前路径创建 new 文件夹
'## 说明: 该方法的path只能为当前目录下的文件夹创建,若想多级目录情况,请使用方法 createFolderSeries(path)
'## 返回值: 无
'##
'## createFolderSeries(path)
'## 例如: createFolderSeries("/a/b/c")
'## 表示: fso会到根目录开始扫描 a 文件夹的存在,若不存在 则创建文件夹 a 依次扫描 a,b,c
'## 说明:适用于多级文件夹的创建
'## 返回值: 无
'##
'## createTextFile(path,fileName,textContent)
'## 例如:createTextFile("a/b/c/","log.txt","hello world!")
'## 表示: 在 : 当前路径/a/b/c 中 创建 log.txt 记事本 并打印 hello world
'## 返回值: 无
'##
'## copyFile(oldPath,oldFileName,newPath,newFileName)
'## 例如:copyFile("a/","a.txt","a/b/c/","b.txt")
'## 表示:将 本地路径/a中的a.txt文件复制到 本地路径/a/b/c下并重命名为b.txt
'## 返回值: true 和 false
'##
'## copyFolder(oldPath,oldFolderName,newPath,newFolderName)
'## 例如:copyFolder("a/","a","a/b/c/","c")
'## 表示:将 本地路径/a中的a文件夹 复制到 本地路径/a/b/c下并重命名为c ,复制包括目标文件夹下面的所有文件
'## 返回值: true 和 false
'##
'## moveFile(oldPath,oldFileName,newPath,newFileName)
'## 例如:moveFile("a/","a.txt","a/b/c/","c.txt")
'## 表示:将 本地路径/a中的a.txt文件 移动到 本地路径/a/b/c下并重命名为c.txt , 原路径下的文件已经转移不存在了
'## 返回值: true 和 false
'##
'## moveFolder(oldPath,oldFileName,newPath,newFileName)
'## 例如:moveFolder("a/","a","a/b/c/","c")
'## 表示:将 本地路径/a中的a文件夹 移动到 本地路径/a/b/c下并重命名为c , 原路径下的文件夹已经转移不存在了
'## 返回值: true 和 false
'##
'## deleteFile(path,fileName)
'## 例如:deleteFile("a/","index.html")
'## 表示:将 本地路径/a中的index.html 文件删除
'## 返回值: true 和 false
'##
'## deleteFolder(path,folderName)
'## 例如:deleteFolder("/a/","new")
'## 表示:将 根目录下的a文件夹中的new文件夹删除
'## 返回值: true 和 false
'##
'###################################################################################################################
'##
'## 特别说明:以上除了 isFileExist 和 isFolderExist 返回值的true表示 找到和 false表示未找到
'## deleteFile 和 deleteFolder 返回值 的true 表示删除成功 和false 表示 目标文件不存在
'## 其他方法返回的 true表示操作已成功 和 false 表示 文件/文件夹未找到,操作均为强制执行,若想判断文件/文件夹存在之后,
'## 再做文件操作的话,请用 isFileExist 或 isFolderExist 判断之后 ,根据true或false情况再做文件覆盖和删除,代码只做参考,
'## 误删或文件覆盖情况,导致找不到文件或文件丢失均与本人无关,另外:方法涉及文件操作,方法运行确保文件/文件夹可写或可读
'##
'###################################################################################################################
%>
<%
function isFileExist(path,fileName)
Set fso =Server.CreateObject("Scripting.FileSystemObject")
'response.Write server.mappath(path&fileName)&"
"
existStatus=fso.FileExists(server.mappath(path&fileName))
isFileExist=existStatus
set fso=nothing
end function
function isFolderExist(path,folderName)
Set fso =Server.CreateObject("Scripting.FileSystemObject")
'response.Write server.mappath(path&folderName)&"
"
existStatus=fso.FolderExists(server.mappath(path&folderName))
isFolderExist=existStatus
set fso=nothing
end function
function createFolder(path,folderName)
Set fso =Server.CreateObject("Scripting.FileSystemObject")
'response.Write server.mappath(path&folderName)&"
"
fso.CreateFolder server.mappath(path&folderName)
set fso=nothing
end function
function createFolderSeries(path)
if trim(path) <> "" then
myPath=path
isFirstLine=false
isHaveLine=right(path,1)
isHaveFirstLine=left(path,1)
if isHaveLine="\" or isHaveLine="/" then myPath=left(path,len(path)-1)
if isHaveFirstLine="\" or isHaveFirstLine="/" then
isFirstLine=true
myPath=right(myPath,len(myPath)-1)
end if
pathArray=split(myPath,"/")
curFolder=""
pathLine=""
if isFirstLine=true then curFolder="/"
for i=0 to ubound(pathArray)
if i <> 0 then pathLine="/"
curFolder=curFolder&pathLine&pathArray(i)
if isFolderExist(curFolder,"") =false then
createFolder curFolder,""
end if
next
end if
end function
function createTextFile(path,fileName,textContent)
Set fso =Server.CreateObject("Scripting.FileSystemObject")
Set setFile = fso.CreateTextFile(server.mappath(path&fileName), True)
setFile.WriteLine(textContent)
setFile.Close
set fso=nothing
end function
function copyFile(oldPath,oldFileName,newPath,newFileName)
if isFileExist(oldPath,oldFileName) =true then
oldFilePath=server.mappath(oldPath&oldFileName)
createFolderSeries newPath
newFilePath=server.mappath(newPath&newFileName)
Set fso =Server.CreateObject("Scripting.FileSystemObject")
fso.CopyFile oldFilePath,newFilePath,True
set fso=nothing
copyFile=true
else
copyFile=false
end if
end function
function copyFolder(oldPath,oldFolderName,newPath,newFolderName)
if isFolderExist(oldPath,oldFolderName) =true then
oldFolderPath=server.mappath(oldPath&oldFolderName)
newFolderPath=server.mappath(newPath&newFolderName)
createFolderSeries newPath
Set fso =Server.CreateObject("Scripting.FileSystemObject")
fso.CopyFolder oldFolderPath,newFolderPath,True
set fso=nothing
copyFolder=true
else
copyFolder=false
end if
end function
function moveFile(oldPath,oldFileName,newPath,newFileName)
if isFileExist(oldPath,oldFileName) =true then
oldFilePath=server.mappath(oldPath&oldFileName)
createFolderSeries newPath
newFilePath=server.mappath(newPath&newFileName)
Set fso =Server.CreateObject("Scripting.FileSystemObject")
fso.MoveFile oldFilePath,newFilePath
set fso=nothing
moveFile=true
else
moveFile=false
end if
end function
function moveFolder(oldPath,oldFolderName,newPath,newFolderName)
if isFolderExist(oldPath,oldFolderName) =true then
oldFolderPath=server.mappath(oldPath&oldFolderName)
createFolderSeries newPath
newFolderPath=server.mappath(newPath&newFolderName)
Set fso =Server.CreateObject("Scripting.FileSystemObject")
fso.MoveFolder oldFolderPath,newFolderPath
set fso=nothing
moveFolder=true
else
moveFolder=false
end if
end function
function deleteFile(path,fileName)
if isFileExist(path,fileName) =true then
Set fso =Server.CreateObject("Scripting.FileSystemObject")
fso.DeleteFile (server.mappath(path&fileName)) ,true
set fso=nothing
deleteFile=true
else
deleteFile=false
end if
end function
function deleteFolder(path,folderName)
if isFolderExist(path,folderName) =true then
Set fso =Server.CreateObject("Scripting.FileSystemObject")
fso.DeleteFolder (server.mappath(path&folderName)),true
set fso=nothing
deleteFolder=true
else
deleteFolder=false
end if
end function
%>