getFileList

サブフォルダを含めたファイル一覧を配列で返します。

構文
getFileList( folderspec, [TextStream = NULL, filename, bool] )
引数
folderspec
フォルダのパス
TextStream
TextStreamオブジェクト
filename
一時ファイル名
bool
再帰呼び出しの深さが最上部か
戻値

プログラム

//////////////////////////////////////////////////
// 【引数】
//   folderspec : フォルダのパス 
//   TextStream : TextStreamオブジェクト 
//   filename : 一時ファイル名 
//   bool : 再帰呼び出しの深さが最上部か 
// 【戻値】
// 
//////////////////////////////////////////////////
FUNCTION getFileList(folderspec, TextStream = NULL, filename = "", bool = TRUE)
	DIM FSO = CREATEOLEOBJ("Scripting.FileSystemObject")
	IFB TextStream = NULL THEN
		CONST TemporaryFolder = 2
	 	DIM TempFolder = FSO.GetSpecialFolder(TemporaryFolder)
		DIM TempFolderspec = TempFolder.Path
		DIM name = FSO.GetTempName
		filename = FSO.BuildPath(Tempfolderspec, name)
		TextStream = FSO.CreateTextFile(filename)
	ENDIF
	DIM Folder = FSO.GetFolder(folderspec)
	DIM Folders = Folder.SubFolders
	FOR Folder IN Folders
		TextStream.WriteLine(Folder.Path)
		getFileList(Folder.Path, TextStream, filename, FALSE)
		FOR File IN Folder.Files
			TextStream.WriteLine(File.Path)
		NEXT
	NEXT
	IFB bool THEN
		TextStream.Close
		TextStream = FSO.OpenTextFile(filename)
		DIM str = TextStream.ReadAll
		TextStream.Close
		FSO.DeleteFile(filename)
		RESULT = SPLIT(str, "<#CR>")
	ENDIF
FEND