Function qipaosorting(path)
Set FSO=Server.CreateObject("Scripting.FileSystemObject") 'FSO对象
Set FD=FSO.GetFolder(path) '获得文件夹
Set F=FD.Files '获得文件夹内文件
For Each OneFile in F '列出所有的txt文件
filename=OneFile.Name
If LCase(right(filename,3))="txt" Then '只对txt文件处理
filename_arr0=filename_arr0&Left(filename,Len(filename)-4)&"|" '获得主文件名,保存在变量中,0|0|形式
filename_arr1=filename_arr1&DateValue(OneFile.DateCreated)&"|" '获得文件建立日期
End If
Next
filename_arr0=split(filename_arr0,"|") '转化为文件名数组
filename_arr1=split(filename_arr1,"|") '转化为日期数组
'把文件名和时间按照顺序加入二维数组
dim filename_arr()
redim filename_arr(ubound(filename_arr0),2) '重新定义
for i=0 to ubound(filename_arr0)-1
filename_arr(i,0)=filename_arr0(i)
filename_arr(i,1)=filename_arr1(i)
next
erase filename_arr0 '删除数组
erase filename_arr1
'------按照时间的顺序使用起泡法排列数组------
for j=0 to ubound(filename_arr)-1
for i=0 to ubound(filename_arr)-1-j
if DateDiff("d",filename_arr(i,1),filename_arr(i+1,1))>0 Then '判断时间先后,如果比后面的晚,交换数据
'if filename_arr(i,1)<filename_arr(i+1,1) Then '这个只能判断字符,而不能判断时间
'交换前后数组内容--文件名
temp=filename_arr(i,0)
filename_arr(i,0)=filename_arr(i+1,0)
filename_arr(i+1,0)=temp
'交换前后数组内容--建立时间
temp=filename_arr(i,1)
filename_arr(i,1)=filename_arr(i+1,1)
filename_arr(i+1,1)=temp
end if
next
next
'------结束起泡法------
qipaosorting=filename_arr '返回二维数组
End Function '结束函数
Set FSO=Server.CreateObject("Scripting.FileSystemObject") 'FSO对象
Set FD=FSO.GetFolder(path) '获得文件夹
Set F=FD.Files '获得文件夹内文件
For Each OneFile in F '列出所有的txt文件
filename=OneFile.Name
If LCase(right(filename,3))="txt" Then '只对txt文件处理
filename_arr0=filename_arr0&Left(filename,Len(filename)-4)&"|" '获得主文件名,保存在变量中,0|0|形式
filename_arr1=filename_arr1&DateValue(OneFile.DateCreated)&"|" '获得文件建立日期
End If
Next
filename_arr0=split(filename_arr0,"|") '转化为文件名数组
filename_arr1=split(filename_arr1,"|") '转化为日期数组
'把文件名和时间按照顺序加入二维数组
dim filename_arr()
redim filename_arr(ubound(filename_arr0),2) '重新定义
for i=0 to ubound(filename_arr0)-1
filename_arr(i,0)=filename_arr0(i)
filename_arr(i,1)=filename_arr1(i)
next
erase filename_arr0 '删除数组
erase filename_arr1
'------按照时间的顺序使用起泡法排列数组------
for j=0 to ubound(filename_arr)-1
for i=0 to ubound(filename_arr)-1-j
if DateDiff("d",filename_arr(i,1),filename_arr(i+1,1))>0 Then '判断时间先后,如果比后面的晚,交换数据
'if filename_arr(i,1)<filename_arr(i+1,1) Then '这个只能判断字符,而不能判断时间
'交换前后数组内容--文件名
temp=filename_arr(i,0)
filename_arr(i,0)=filename_arr(i+1,0)
filename_arr(i+1,0)=temp
'交换前后数组内容--建立时间
temp=filename_arr(i,1)
filename_arr(i,1)=filename_arr(i+1,1)
filename_arr(i+1,1)=temp
end if
next
next
'------结束起泡法------
qipaosorting=filename_arr '返回二维数组
End Function '结束函数
本文介绍了一个使用VBScript编写的函数,该函数能够读取指定路径下的所有.txt文件,并按文件创建日期进行排序。通过创建FileSystemObject对象来获取文件信息,并采用冒泡排序算法实现了排序逻辑。
1万+

被折叠的 条评论
为什么被折叠?



