起泡法按照时间排列文件(FSO)(修正)

原创 2003年08月17日 22:07:00
本站的http://btyz.51web.cn/collection.asp使用按照时间排列文件的,后来想到如果按照文件建立的时间为顺序排列,那就太棒了。幸好学过C语言,起泡法只是一个简单的算法而已,但是在网页编程中要用到什么算法的还是比较少的,我已经用过的算法只有递归和起泡法。有问题大家多多指点。这种算法效率好像不是很高。不知道有没有更好的办法。
<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
<%
'######################################'
'##   Copyright (C) 2003 醉雨梧桐 All rights reserved.     ##'
'##                     Powered by 醉雨梧桐                          ##'
'##                 http://btyz.51web.cn/                             ##'
'##                  winterfire@163.com                              ##'
'######################################'
Function file_list(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
'------结束起泡法------
  file_list=filename_arr '返回二维数组
End Function  '结束函数

file_arr=file_list("g:/my documents/txt/")  '调用函数返回二维数组
for i=0 to ubound(file_arr)-1
   Response.Write(file_arr(i,0)&"--"&file_arr(i,1)&"<br/>") '输出结果
next
%>

[转载] 起泡法按照时间排列文件(FSO)

        起泡法只是一个简单的算法而已,但是在网页编程中要用到什么算法的还是比较少的,已经用过的算法只有递归和起泡法。有问题大家多多指点。 ###########################...
  • feng_sundy
  • feng_sundy
  • 2005年05月29日 12:59
  • 1157

使用起泡法按照时间排列文件

Function qipaosorting(path)  Set FSO=Server.CreateObject("Scripting.FileSystemObject")  FSO对象  Set F...
  • znjgress
  • znjgress
  • 2006年03月13日 17:21
  • 676

编写程序,用起泡法对10个数排序(按由小到大顺序) (C++版)

#include using namespace std; int main() { int a[10]; int i,j,t; cout
  • xiaofeilong321
  • xiaofeilong321
  • 2013年04月16日 20:02
  • 1330

起泡算法的最佳复杂度O(N)

//起泡法,大数沉底 #include #include #include int main() { char a[1000]; gets(a); int k=strlen(a); f...
  • qqyuanhao163
  • qqyuanhao163
  • 2015年09月03日 18:56
  • 541

用起泡法对10个数排序。

/* * Copyright (c) 2012, 烟台大学计算机学院 * All rights reserved. * 作 者: 刘同宾 ...
  • liubinzi123
  • liubinzi123
  • 2012年11月25日 12:56
  • 4223

[ASP技巧] 巧给FSO文件夹列表内容排序

自己写排序算法十分繁琐,而且不够灵活,百度搜索“ASP 文件夹排序”搜到的结果可以100%视为垃圾。本文推荐一种最小代价的做法。 '定义获取排序文件列表的函数 Function getSor...
  • cuixiping
  • cuixiping
  • 2012年09月07日 00:29
  • 2908

用起泡法对10个数排序(由小到大)

用起泡法对10个数排序(由小到大)若有n个数。第一次将第1和第2个数比较,若第1个数大于第2个数,刚两数对调,否则不操作。第二次将第2和第3个数比较,如上操作,刚经过n-1次这样的操作,最大的数排到了...
  • dwzsq
  • dwzsq
  • 2008年02月08日 17:05
  • 7293

C程序中实现排序的选择法和起泡法

C程序中实现排序的选择法和起泡法 C语言中对1个数组中的10个数排序时,涉及到两种基本方法:选择法和起泡法。两种方法算法不同,结构大同小异。 两种方法的相同之处在于结构上基本相同。(均由两层for...
  • i1369230032
  • i1369230032
  • 2011年09月14日 20:55
  • 2323

c++_用起泡法对十个数进行排列

/***************************** *2011年10月18日16:37:38 *描述:用起泡法对十个数排序 *****************************/...
  • a191030148
  • a191030148
  • 2012年10月30日 13:05
  • 3124

习题 7.11 写一个函数,用“起泡法”对输入的10个字符按由小到大顺序排列。

C程序设计(第四版) 谭浩强 习题7.11 个人设计习题 7.11 写一个函数,用“起泡法”对输入的10个字符按由小到大顺序排列。代码块:#include #include void stob(ch...
  • navicheung
  • navicheung
  • 2017年09月17日 10:49
  • 1323
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:起泡法按照时间排列文件(FSO)(修正)
举报原因:
原因补充:

(最多只允许输入30个字)