前のトピック: FindNext次のトピック: GetDir または GetDirectory - 現行ディレクトリ名の取得


FindNextFile - FindFirstFile ディレクトリ スキャンの続行

NetWare、Symbian OS、UNIX、Windows、および Windows CE で有効です。

FindNextFile 関数では、ディレクトリ スキャンが続行されます。

ファイルの内容に関するこの関数の形式は、以下のとおりです。

FindNextFile(findHandle as Integer, filename as String) as Integer
findHandle

FindFirstFile で返されたハンドルを識別します。

filename

見つかったファイルの名前を含む出力パラメータを指定します。

この関数では、ファイルが検出された場合、値 1 が返され、検出されない場合、値 0 が返されます。

例: FindNextFile 関数

この例では、引数として渡されるディレクトリの内容が繰り返しリストされます。

Function contents(root as string) As Boolean
	Dim fileName As String
	Dim iHandle As Integer
	Dim rootRoot As String
	
	rootRoot = Mid(root, 0, len(root)-1)
	iHandle = FindFirstFile(root, fileName)) Then
	If iHandle = 0 Then
		Print("No files found at """ + root + """")
	Else
		Repeat
			If Is_Dir(rootRoot + fileName) Then
				Print("""" + rootRoot + fileName + """ is a directory")
				if Not(fileName = ".") AND Not(fileName = "..") Then
					contents(rootRoot + fileName + "¥*")
				End If
			Else
				Print("""" + rootRoot + fileName + """ is a file")
			End If
		Until Not(FindNextFile(iHandle, fileName))

		FindClose(iHandle)
	End If
	contents = TRUE
End Function

Dim i As Integer
ClrScr()
if Argc() = 1 Then
	終了
End If
For i=1 To Argc()-1
	Print(NEWLINE$ + "Recursive List of """ + Argv(i) + """")
	Contents(Argv(i))
Next i

Invokation: dmscript sample.dms c:¥* -w_dms