求助高手:一段搜索目录下的子目录代码,有几个不懂,请教一下,多谢了。
**陕西zx1913 自定义函数FOR JJ=1 TO 陕西ZX1913("D:\")
=MESSAGEBOX(CARRAYNAME(JJ),48,"报告")
NEXT JJ
* ==============
FUNC 陕西ZX1913
PARAMETERS CPATH &&接收上述"D:\"
CPATH=CPATH+"*.*" &&路径加上"*.*",得到类似"c:\??\??\*.*"
NCOUNT=ADIR(CDIRNAME,CPATH,"D") &&&把文件属性为D,放入数组中并返回文件个数
NN=0
FOR II=1 TO NCOUNT
IF "D"$CDIRNAME(II,5) AND !CDIRNAME(II,1)=="." AND !CDIRNAME(II,1)==".."
NN=NN+1
PUBLIC CARRAYNAME(NN) &&&根据传递的数组名和得到的目录个数创建一个全局数组
CARRAYNAME(NN)=ALLTRIM(CDIRNAME(II,1)) &&&&&将用adir()得到的文件和目录数组中目录名存放到自定义全局数
ENDIF
ENDFOR
RETURN NN
---------------------------------------------
有几个不懂请教一下:
1、能用表达式调用自定义定义函数,那调用陕西ZX1913函数 ,是不是这个表达式: for jj=1 TO 中的“陕西ZX1913("D:\")” ,它把变量传给 FUNC 陕西ZX1913, PARAMETERS CPATH。
2、retunn NN ,它返回值NN是不是返回给 “陕西ZX1913("D:\")”
3 =MESSAGEBOX(CARRAYNAME(JJ)它显示出各目录名称,那它的CARRAYNAME(JJ)与全局数组CARRAYNAME(NN)这之间如何联系?全局数组的变量能传递给CARRAYNAME(JJ)?
4在自定义函数中能创建全局数组PUBLIC CARRAYNAME(NN)? ,书中讲()中应是具体数字,如(1)或(2)怎么可用nn呢?在主程序中如何来调用全局数组它?