![]() |
#2
cluna20132020-06-22 13:50
下面是程序代码:
SET SAFETY OFF && 指定在改写已有文件时不显示对话框 SET TALK OFF && 阻止对话结果发送到 Visual FoxPro 主窗口、系统信息窗口、图形状态栏或用户自定义窗口 SET SYSMENU OFF && 在程序执行期间废止 Visual FoxPro 主菜单栏 SET DATE ANSI && 设置中国日期格式为yy.mm.dd SET HOURS TO 24 && 将时间设为24小时制 SET CENTURY ON && 设置日期格式为带世纪的 SET PATH TO CURDIR() && 设置当前路径为默认路径 PUBLIC wjno wjno=0 DO WHILE wjno<5 DO CASE CASE wjno=0 OR wjno=2 DO FORM \Form\wjtran.scx READ EVENTS CASE wjno=1 DO wj01 DO FORM \Form\wjtran.scx READ EVENTS ENDCASE ENDDO PROCEDURE wj01 && 存档程序 WAIT CREATE TABLE files0 (文件名 C(100), 文件大小 N(13), 修改日期 T, 类型 C(3), 路径 C(80)) && 创建表 listfiles([&listfiles]) && 建立listfiles函数 FUNCTION ListFiles(tcFolder) && 自定义路径函数 LOCAL ARRAY laFiles[1] && 创建的数组laFiles,[1]表示一组。 LOCAL lcFileName, ii m.tcFolder = ADDBS(m.tcFolder) && 向路径表达式添加一个反斜杠。 IF ADIR(m.laFiles, m.tcFolder + '*.*', 'AHRSD', 1) < 3 && 若是文件长度小于3个字节,则不计算。 RETURN .F. ENDIF ASORT(m.laFiles, 3, -1, 1) && 按第3列排序数组,最后一位数大于0为降序排序。 FOR m.ii = 1 TO ALEN(m.laFiles, 1) && 返回数组中元素、行或列的数目。 m.lcFileName = m.laFiles[m.ii, 1] DO CASE CASE '.' == m.lcFileName Or '..' == m.lcFileName CASE AT('D', m.laFiles[m.ii, 5]) > 0 && 在一个字符表达式中查找另一个字符表达式出现的位置。 ListFiles(m.tcFolder + m.lcFileName) OTHERWISE lafilesdt1=DTOC(m.lafiles[m.ii, 3]) lafilesdt2=m.lafiles[m.ii, 4] m.lafiles[m.ii, 3]=CTOT([&lafilesdt1 &lafilesdt2]) INSERT INTO files0 VALUES (m.lafiles[m.ii, 1], m.lafiles[m.ii, 2], m.lafiles[m.ii, 3], JUSTEXT(m.lafiles[m.ii, 1]), m.tcFolder) && 将数据录入到表中。 ENDCASE ENDFOR wjno=0 RETURN ENDFUNC && 标识 FUNCTION 结构的结束。 |
只有本站会员才能查看附件,请 登录

