DirExist

フォルダの存在を確認し、その属性を返します。

AttributeString := DirExist(FilePattern)

パラメータ

FilePattern

型:文字列

チェックするパス、フォルダ名、またはファイルパターンを指定します。FilePatternは、絶対パスが指定されない場合、A_WorkingDirにあるとみなされます。

戻り値

型:文字列

この関数は、最初にマッチしたフォルダの属性を返します。この文字列はRASHDOCのサブセットで、各文字は次のような意味を持っています:

この関数は、フォルダの存在を確認するだけなので、戻り値には必ず "D "が含まれる。フォルダが見つからない場合は、空の文字列が返されます。

備考

Note that searches such as DirExist("MyFolder\*") with MyFolder containing files and subfolders will only tell you whether a folder exists. ファイルフォルダの存在をチェックしたい場合は、代わりにFileExistを使う。

FileGetAttribとは異なり、DirExistはワイルドカードパターンをサポートし、一致するフォルダが存在する場合は常に空でない値を返します。

空文字列は "false"とみなされるため、この関数の戻り値は常に準ブール値として使用することができる。例えば、if DirExist("C:\MyFolder")という文は、そのフォルダが存在すれば真、そうでなければ偽となります。

FilePatternはワイルドカードを含むことができるので、DirExistは他の関数やプログラムで使用するフォルダパスの検証には適さないかもしれません。例えば、DirExist("Program*")は、"Program*"が有効なフォルダ名でないにもかかわらず、属性を返す場合があります。このような場合は、FileGetAttribを使用することが望ましい。

FileExistFileGetAttribファイルループ

フォルダが存在する場合は、メッセージボックスを表示します。

if DirExist("C:\Windows")
    MsgBox "The target folder does exist."

少なくとも1つのプログラムフォルダーが存在する場合、メッセージボックスを表示します。

if DirExist("C:\Program*")
    MsgBox "At least one program folder exists."

フォルダが存在しないときにメッセージボックスを表示します。

if not DirExist("C:\Temp")
    MsgBox "The target folder does not exist."

特定の属性についてフォルダをチェックする方法を説明します。

if InStr(DirExist("C:\System Volume Information"), "H")
    MsgBox "The folder is hidden."