Dir-Funktion
Aktualisiert: November 2007
Gibt eine Zeichenfolge zurück, die den Namen einer Datei, eines Verzeichnisses oder eines Ordners darstellt, der einem bestimmten Muster oder Dateiattribut oder der Datenträgerbezeichnung eines Laufwerks entspricht.
Das My.Computer.FileSystem-Objekt ermöglicht bei Datei-E/A-Vorgängen höhere Produktivität und Leistungsfähigkeit als Dir. Weitere Informationen finden Sie unter My.Computer.FileSystem.GetDirectoryInfo-Methode.
Public Overloads Function Dir() As String
' -or-
Public Overloads Function Dir( _
ByVal PathName As String, _
Optional ByVal Attributes As FileAttribute = FileAttribute.Normal _
) As String
Parameter
PathName
Optional. String-Ausdruck, der einen Datei-, Verzeichnis- oder Ordnernamen bzw. eine Datenträgerbezeichnung angibt. Wenn PathName nicht gefunden wird, wird eine Zeichenfolge mit der Länge 0 (null) ("") zurückgegeben.Attributes
Optional. Enumeration oder numerischer Ausdruck, dessen Wert Dateiattribute angibt. Wenn keine Angabe erfolgt, gibt Dir Dateien zurück, die PathName entsprechen, aber keine Attribute aufweisen.
Einstellungen
Für die Attributes-Argumentenumeration sind folgende Werte definiert:
Wert |
Konstante |
Beschreibung |
---|---|---|
Normal |
vbnormal |
Standard. Gibt Dateien ohne Attribute an. |
ReadOnly |
vbReadOnly |
Gibt neben den Dateien ohne Attribute auch schreibgeschützte Dateien an. |
Hidden |
vbHidden |
Gibt neben den Dateien ohne Attribute auch ausgeblendete Dateien an. |
System |
vbSystem |
Gibt neben den Dateien ohne Attribute auch Systemdateien an. |
Volume |
vbVolume |
Gibt die Datenträgerbezeichnung an. vbVolume wird ignoriert, wenn ein beliebiges anderes Attribut angegeben wird. |
Directory |
vbDirectory |
Gibt neben den Dateien ohne Attribute auch Verzeichnisse oder Ordner an. |
Archive |
vbArchive |
Die Datei wurde nach der letzten Sicherung geändert. |
Alias |
vbAlias |
Die Datei hat einen anderen Namen. |
Hinweis: |
---|
Diese Enumerationen werden in der Sprache Visual Basic angegeben und können überall im Code statt der tatsächlichen Werte verwendet werden. |
Hinweise
Sollen mit der Dir-Funktion evtl. mehrere Dateien angegeben werden, können Sie Platzhalter für mehrere (*) und ein einzelnes Zeichen (?) verwenden.
VbVolume gibt die Datenträgerbezeichnung für das Laufwerk statt eines bestimmten Dateinamens zurück.
Beim ersten Aufruf der Dir-Funktion müssen Sie einen PathName angeben. Um das nächste Element abzurufen, können Sie die Dir-Funktion nachfolgend ohne Parameter aufrufen.
Sicherheitshinweis: |
---|
Zur fehlerfreien Ausführung der Dir-Funktion müssen dem ausführenden Code das Read-Flag und das PathDiscovery-Flag der FileIOPermission zugewiesen werden. Weitere Informationen finden Sie unter FileIOPermission, SecurityException und Codezugriffsberechtigungen. |
Beispiel
In diesem Beispiel wird mit der Dir-Funktion überprüft, ob bestimmte Dateien und Verzeichnisse vorhanden sind.
Dim MyFile, MyPath, MyName As String
' Returns "WIN.INI" if it exists.
MyFile = Dir("C:\WINDOWS\WIN.INI")
' Returns filename with specified extension. If more than one *.INI
' file exists, the first file found is returned.
MyFile = Dir("C:\WINDOWS\*.INI")
' Call Dir again without arguments to return the next *.INI file in the
' same directory.
MyFile = Dir()
' Return first *.TXT file, including files with a set hidden attribute.
MyFile = Dir("*.TXT", vbHidden)
' Display the names in C:\ that represent directories.
MyPath = "c:\" ' Set the path.
MyName = Dir(MyPath, vbDirectory) ' Retrieve the first entry.
Do While MyName <> "" ' Start the loop.
' Use bitwise comparison to make sure MyName is a directory.
If (GetAttr(MyPath & MyName) And vbDirectory) = vbDirectory Then
' Display entry only if it's a directory.
MsgBox(MyName)
End If
MyName = Dir() ' Get next entry.
Loop
Hinweise für Entwickler intelligenter Geräte
Diese Funktion wird nicht unterstützt.
Anforderungen
Namespace:Microsoft.VisualBasic
**Modul:**FileSystem
**Assembly:**Visual Basic Runtime Library (in Microsoft.VisualBasic.dll)
Siehe auch
Referenz
<unmanagedCodeEntityReference>CurDir</unmanagedCodeEntityReference>-Funktion