用ADIR(),楼主的问题都解决了

坚守VFP最后的阵地
2020-06-15 10:47
2020-06-15 10:51
2020-06-15 10:54
程序代码:CREATE CURSOR tt (文件名 C(100), 文件大小 N(10), 修改日期 D, 修改时间 C(10), 文件属性 C(10), 文件类型 C(10), 路径 C(100))
listfiles("d:\temp")
BROWSE
FUNCTION ListFiles(tcFolder As String)
LOCAL ARRAY laFiles[1]
LOCAL lcFileName, ii
m.tcFolder = ADDBS(m.tcFolder)
IF ADIR(m.laFiles, m.tcFolder + '*.*', 'AHRSD', 1) < 3
RETURN .F.
ENDIF
ASORT(m.laFiles, 5, -1, 1)
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
INSERT INTO TT VALUES (m.lafiles[m.ii, 1], m.lafiles[m.ii, 2], m.lafiles[m.ii, 3], m.lafiles[m.ii, 4], m.lafiles[m.ii, 5], JUSTEXT(m.lafiles[m.ii, 1]), m.tcFolder)
ENDCASE
ENDFOR
ENDFUNC

2020-06-15 11:38

2020-06-15 11:51
2020-06-15 11:54

2020-06-15 11:56
2020-06-15 11:58
2020-06-15 12:01
2020-06-15 12:09