28,391
社区成员
发帖
与我相关
我的任务
分享
'================================================================================
'你就读数据库啊.然后连接名称
'这样可以及早释放数据库资源,就不需要一直打开数据库连接了
Dim FileNameStr:set FileNameStr=""
Dim conn:set conn=server.createobject("adodb.connection")
conn.open "数据库驱动"
Dim rs'游标
set rs=conn.execute("select name from 表名")'取游标
do while not rs.eof
FileNameStr=FileNameStr&rs(0)&","'连接名称
rs.movenext
loop
'=======释放数据库资源
rs.close
set rs=nothing
conn.close
set conn=nothing
'================================================================================
'============下面就操作FileNameStr就可以了===========
if FileNameStr!="" then FileNameStr=left(FileNameStr,len(FileNameStr)-1)'去掉最右边的,
Dim fso:Set fso=Server.CreateObject("Scripting.FileSystemObject")
Dim Arr:Arr=Split(FileNameStr,",")
Dim files:Set files=fso.GetFolder(Server.MapPath("dll")).files'======这里改过,改为你放dll的路径,修改文件不要和dll放一起。
Dim fileName,Ext,NewFileName,TempArr
Dim MaxIndex,Index:MaxIndex=UBound(Arr):Index=0
For Each f In files
if Index>MaxIndex then exit for'=======当文件数量大于数据库中的数据数量时退出,防止数组下标越界
TempArr=split(f.name,".")
Ext=TempArr(1)
fileName=TempArr(0)
NewFileName=Arr(Index)&"_"&split(fileName,"_")(1)&"."&Ext
f.name=NewFileName
Index=Index+1
Next
Set files=Nothing
Set fso=Nothing
Response.Write "操作完成"
Dim FileNameStr:FileNameStr=LCase("121,131,123,143")'这里121,131,123,143是你读数据库后得到文件名字符串,用,分隔
Dim fso:Set fso=Server.CreateObject("Scripting.FileSystemObject")
Dim Arr:Arr=Split(FileNameStr,",")
Dim files:Set files=fso.GetFolder(Server.MapPath("dll")).files'======这里改过,改为你放dll的路径,修改文件不要和dll放一起。
Dim fileName,Ext,NewFileName,TempArr
Dim MaxIndex,Index:MaxIndex=UBound(Arr):Index=0
For Each f In files
if Index>MaxIndex then exit for'=======当文件数量大于数据库中的数据数量时退出,防止数组下标越界
TempArr=split(f.name,".")
Ext=TempArr(1)
fileName=TempArr(0)
NewFileName=Arr(Index)&"_"&split(fileName,"_")(1)&"."&Ext
f.name=NewFileName
Index=Index+1
Next
Set files=Nothing
Set fso=Nothing
Response.Write "操作完成"
Dim FileNameStr:FileNameStr=LCase("121,131,123,143")'这里121,131,123,143是你读数据库后得到文件名字符串,用,分隔
Dim NewName:NewName=Year(Now)&"-"&Month(Now)&"-"&Day(Now)
Dim fso:Set fso=Server.CreateObject("Scripting.FileSystemObject")
Dim Arr:Arr=Split(FileNameStr,",")
Dim files:Set files=fso.GetFolder(Server.MapPath(".")).files
Dim fileName,Ext,fileToDel()
Dim Index:Index=0:ReDim fileToDel(Index)
'生成新文件并收集旧文件的路径
For Each f In files
fileName=LCase(f.name)
Ext=Right(fileName,len(fileName)-InStrRev(fileName,".")+1)
fileName=Mid(fileName,1,InStrRev(fileName,".")-1)
For i=0 To UBound(Arr)
If Arr(i)=fileName then'同一个文件
f.copy Server.MapPath(".")&"\"&fileName&"_"&NewName&Ext'生成新文件
ReDim Preserve fileToDel(Index)
fileToDel(Index)=f.path'注意这里不能直接f.delete(True)删除这个文件,要不会旧的文件有可能会删除不完全
Index=Index+1
End If
Next
Next
Set files=Nothing
'删除旧的文件
For Each fn In fileToDel
If fso.FileExists(fn) Then fso.DeleteFile(fn)
Next
Set fso=Nothing
Response.Write "操作完成"