下面是我以前写过的一个查找指定目录下面,以指定文件名大头的最新的文件的例子:
Function getLatestFilebyCreateTime(folderspec, rule1)
Dim fs ...
没太看懂呢,那个两个if语句能成立吗?
Function getLatestFilebyCreateTime(folderspec)
Set fso = CreateObject("Scripting.FileSystemObject")
Set f = fso.GetFolder(folderspec)
Set fc = f.Files
'找最后修改时间
For each file_name in fc
If file_name.DateLastModified>tmp Then
tmp=file_name.DateLastModified
End If
Next
'找匹配最后修改时间的文件
For each file_name in fc
If file_name.DateLastModified=tmp Then
getLatestFilebyCreateTime=file_name.name
End If
Next
End Function
[ 本帖最后由 jackymail 于 2008-4-9 11:10 编辑 ]作者: Samon 时间: 2008-4-9 13:09
一个循环就可以搞定,你又为何要用两个循环呢?浪费时间、浪费内存啊,老大!作者: mustwangrong 时间: 2008-4-9 17:24 标题: 回复 4# 的帖子 嵌套if?闹卵!作者: hxf 时间: 2008-4-23 10:54
高手呀作者: lsf4662872 时间: 2008-4-23 18:07
今天正好在学习filesystemobject对象,顺便试着写了几行,不知道可对,第一次在QTP里写脚本,欢迎大家批评指正。代码如下:
function getlatestfilebycreatetime(folderspec)
dim a ,b,c,d,filename,count
count=1
Set a=createobject("scripting.filesystemobject")
Set b=a.getfolder(folderspec)
Set c=b.files
'd=date
For each filename in c
If count=1 Then
d=filename.datelastmodified
count=count+1
else
If filename.datelastmodified>=d Then
d=filename.datelastmodified
getlatestfilebycreatetime=filename.name
End If
End If
Next
end function
Dim result
result=getlatestfilebycreatetime("C:\Documents and Settings\Administrator\My Documents")
msgbox result