[ 파워빌더.파일 - 목록가져오기1 ]

 

  /* integer gf_GetFileList( string as_path, listbox alb_box, ref string as_Files[])
 지정된 경로에서 하위 폴더를 포함한 파일의 리스트를 가져온다.
*/
int i, j, k, i_cnt
String ls_file, ls_Files[], ls_Sub, ls_SubFiles[], ls_tmp[]
as_Files = ls_tmp
if Right(as_path,1) <> '\' then as_path += '\'
alb_box.Reset()
alb_box.DirList(as_path+"*.*", 16)
for i = 1 to alb_box.Totalitems( )
 ls_Files[UpperBound(ls_Files) + 1] = alb_box.text(i)
next
for i = 1 to UpperBound(ls_Files)
 ls_file = ls_Files[i]
 if ls_file = '[..]' then Continue
 if Left(ls_file,1) = '[' and right(ls_file,1) = ']' then
  ls_file = Left(ls_file, Len(ls_file) - 1)
  ls_file = Mid(ls_file, 2) + '\'
  ls_Sub = as_path + ls_file
  i_cnt = gf_GetFileList( ls_Sub, alb_box, ls_SubFiles )
  for j = 1 to i_cnt
   as_Files[UpperBound(as_Files) + 1] = ls_file + ls_SubFiles[j]
  next
 else
  as_Files[UpperBound(as_Files) + 1] = ls_file
 end if
next
i_cnt = UpperBound(as_Files)
return i_cnt

Posted by 농부지기
,