Tartalom
Index 🔎︎

# Dir függvény

Visszaadja egy könyvtár, egy fájl vagy az összes olyan fájl, illetve könyvtár nevét egy meghajtón, illetve egy könyvtárban, amelyek megfelelnek a megadott keresési útvonalnak.

### Szintaxis:

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

## Visszatérési érték:

String (karakterlánc)

### Paraméterek:

Szöveg: String (karakterlánc) kifejezés, amely megadja a keresési utat, a fájlt vagy a könyvtárat. Ez az argumentum csak a Dir függvény első meghívásakor adható meg. Igény szerint URL-jelöléssel is megadhatja az elérési utat.

Attribútum: Bármilyen integer (egész szám) kifejezés, amely megadja a fájlattribútum-biteket. A Dir függvény csak a megadott attribútumoknak megfelelő fájlokat vagy könyvtárakat adja vissza. Az attribútumértékek hozzáadásával számos attribútumot egyesíthet:

0 : Normál fájlok.

16 : Csak a könyvtár nevét adja vissza.

Ezzel az attribútummal ellenőrizheti egy könyvtár létezését, vagy meghatározhatja az adott könyvtárban levő összes fájlt és mappát.

Annak ellenőrzéséhez, hogy a fájl létezik-e, adja meg a fájl teljes elérési útját vagy nevét. Ha a fájl- vagy könyvtárnév nem létezik, akkor a Dir függvény nulla hosszúságú karakterláncot ad vissza ("").

Ha egy adott könyvtárban lévő összes fájlt akarja kilistázni, a következő módon járjon el: A Dir függvény első meghívásakor adja meg a fájlok keresésének teljes elérési útját, például "D:\Files\*.ods". Ha az elérési út helyes, és a keresés legalább egy fájlt talál, akkor a Dir függvény visszaadja a keresési útnak megfelelő első fájlt. Az elérési útnak megfelelő további fájlnevek visszaadásához hívja meg újra a Dir függvényt, de argumentumok nélkül.

Ha csak a könyvtárakat akarja visszaadni, használja az attribútumparamétert. Ugyanez érvényes, ha meg kívánja határozni a kötet (például merevlemez-partíció) nevét.

### Hibakódok:

5 Érvénytelen eljáráshívás

53 A fájl nem található

### Példa:

    Sub ExampleDir
    ' Megjeleníti az összes könyvtárat és fájlt
    Dim sPath As String
    Dim sDir As String, sValue As String
        sDir="Könyvtárak:"
        sPath = CurDir
        sValue = Dir$(sPath + getPathSeparator + "*",16)
        Do
            If sValue <> "." And sValue <> ".." Then
                If (GetAttr( sPath + getPathSeparator + sValue) And 16) >0 Then
                    ' könyvtárak beolvasása
                    sDir = sDir & chr(13) & sValue
                End If
            End If
            sValue = Dir$
        Loop Until sValue = ""
        MsgBox sDir,0,sPath
    End Sub

Kapcsolódó témakörök

CurDir Function