IBM Lotus Symphony


Dir-Funktion [Laufzeit]

Gibt den Namen einer Datei, eines Verzeichnisses oder aller Dateien und Verzeichnisse auf einem Laufwerk oder in einem Verzeichnis zurück, die dem angegebenen Suchpfad entsprechen.

Syntax:

Dir [(Text As String) [, Attrib As Integer]]

Rückgabewert:

String

Parameter:

Text: Zeichenfolgeausdruck, der den Suchpfad, das Verzeichnis oder die Datei angibt. Dieses Argument kann nur beim ersten Aufruf der Dir-Funktion angegeben werden. Bei Bedarf können Sie den Pfad in der URL-Schreibweise eingeben.

Attrib: Integer-Ausdruck, der bitweise Dateiattribute angibt. Die Dir-Funktion gibt nur Dateien oder Verzeichnisse zurück, die den angegebenen Attributen entsprechen. Sie können verschiedene Attribute kombinieren, indem Sie die Attributwerte hinzufügen:

0 : Normale Dateien.

16 : Gibt nur den Namen des Verzeichnisses zurück.

Verwenden Sie dieses Attribut, um zu überprüfen, ob eine Datei oder ein Verzeichnis vorhanden ist. Sie können damit auch alle Dateien und Ordner in einem bestimmten Verzeichnis ermitteln.

Geben Sie den vollständigen Pfad und Namen der Datei ein, um zu überprüfen, ob diese vorhanden ist. Wenn der Datei- oder Verzeichnisname nicht vorhanden ist, gibt die Dir-Funktion eine leere Zeichenfolge zurück ("").

Gehen Sie wie folgt vor, wenn Sie eine Liste aller vorhandenen Dateien in einem bestimmten Verzeichnis generieren möchten: Beim ersten Aufruf der Dir-Funktion geben Sie den vollständigen Suchpfad für die Dateien ein, z. B. "D:\Files\*.sxw". Wenn der Pfad richtig ist und bei der Suche mindestens eine Datei gefunden wird, gibt die Dir-Funktion den Namen der ersten Datei zurück, die dem Suchpfad entspricht. Rufen Sie die Dir-Funktion erneut, aber ohne Argumente auf, um weitere Dateinamen zurückzugeben, die dem Pfad entsprechen.

Verwenden Sie die Attributparameter, um nur Verzeichnisse zurückzugeben. Dasselbe gilt, wenn Sie den Namen eines Datenträgers ermitteln möchten (z. B. die Partition einer Festplatte).

Fehlercodes

5 Invalid procedure call

53 File not found

Beispiel:

Sub ExampleDir

REM Zeigt alle Dateien und Verzeichnisse an

Dim sPath As String

Dim sDir as String, sValue as String

sDir="Verzeichnisse:"

sPath = CurDir

sValue = Dir$(sPath + getPathSeparator + "*",16)

Do

If sValue <> "." and sValue <> ".." Then

if (GetAttr( sPath + getPathSeparator + sValue) AND 16) >0 then

REM Verzeichnisse abrufen

sDir = sDir & chr(13) & sValue

End If

End If

sValue = Dir$

Loop Until sValue = ""

MsgBox sDir,0,sPath

End sub


Produktfeedback | Zusätzliche Dokumentation | Marken