Dir funkcija

Taikoma
„Access“, skirta „Microsoft 365“ „Access 2024“ Access 2021 Access 2019 Access 2016

Pastaba

Šioje temoje aprašyta funkcija, metodas, objektas arba ypatybė išjungiama, jei "„Microsoft“ Jet" reiškinių tarnyba veikia smėlio dėžės režimu, kuris neleidžia įvertinti potencialiai nesaugių reiškinių. Daugiau informacijos apie smėlio dėžės režimą ieškokite žinyne "smėlio dėžės režimas".

Pateikia eilutę, nurodančią failo, katalogo arba aplanko, atitinkančio nurodytą šabloną, failo atributą arba disko tomo žymą, pavadinimą.

Sintaksė

Dir[(kelio pavadinimas [, atributai] )]

Funkcijos Dir sintaksėje yra toliau nurodyti argumentai.

Argumentas Aprašymas
kelio pavadinimas Pasirinktinis. Eilutės reiškinys, nurodantis failo vardą – gali apimti katalogą arba aplanką ir diską. Jei kelio pavadinimo nerandama, pateikiama nulinio ilgio eilutė ("").
atributai Pasirinktinis. Konstanta arba skaitinė išraiška, kurios suma nurodo failo atributus. Jei nenurodyta, grąžinami failai, atitinkantys kelio pavadinimą , bet neturintys atributų.

    

Parametrai

Atributų argumentoparametrai yra:

Konstanta Reikšmė Aprašymas
vbNormal 0 (Numatytasis parametras). Nurodomi failai, neturintys atributų.
vbReadOnly 1 Be failų be atributų, nurodomi tik skaitomi failai.
vbPaslėptas 2 Be failų, neturinčių atributų, nurodomi paslėpti failai.
VbSistema 4 Nurodomi sistemos failai be failų be atributų. Negalima naudoti "Macintosh".
vbVolume 8 Nurodo tūrio etiketę; jei nurodytas kitas priskyrimas, vbVolume nepaisoma. Negalima naudoti "Macintosh".
vbDirectory 16 Nurodomi katalogai arba aplankai be failų, neturinčių atributų.
vbAlias 64 Nurodytas failo vardas yra pseudonimas. Galima tik Macintosh.

    

Pastaba

Šias konstantas nurodo "Visual Basic for Applications" (VBA) ir vietoj faktinių reikšmių jas galima naudoti bet kurioje kodo vietoje.

Pastabos

Sistemoje „Microsoft“ Windows Dir palaiko kelių simbolių (*) ir vieno simbolio (?) pakaitos simbolių naudojimą keliems failams nurodyti. Macintosh vartotojai laikomi leistinais failo vardo simboliais ir negali būti naudojami kaip pakaitos simboliai nurodant kelis failus.

Kadangi "Macintosh" nepalaiko pakaitos simbolių, naudokite failo tipą, kad nustatytumėte failų grupes. Norėdami nurodyti failo tipą, užuot naudoję failų vardus, galite naudoti funkciją "MacID ". Pvz., šis sakinys grąžina pirmojo TEXT failo dabartiniame aplanke vardą:

Dir("SomePath", MacID("TEXT"))

Norėdami kartoti visus aplanko failus, nurodykite tuščią eilutę:

Dir("")

Jei naudojate "MacID" funkciją su "Dir " sistemoje "Windows", įvyksta klaida.

Bet kuri atributų reikšmė, didesnė nei 256, laikoma "MacID" reikšme.

Turite nurodyti kelio pavadinimą pirmą kartą iškvietus funkciją Dir , kitaip įvyks klaida. Jei taip pat nurodysite failo atributus, turės būti nurodytas kelio pavadinimas .

Dir grąžina pirmą failo vardą, kuris atitinka kelio pavadinimą. Norėdami gauti papildomų failų vardų, atitinkančių kelio pavadinimą, dar kartą iškvieskite "Dir " be jokių argumentų. Kai nebesutampa failų vardai, Dir pateikia nulinio ilgio eilutę (""). Kai grąžinama nulinio ilgio eilutė, turite nurodyti kelio pavadinimą paskesniuose iškvietimuose arba įvyks klaida. Galite pakeisti į naują kelio pavadinimą nenuskaitydami visų failų vardų, kurie atitinka dabartinį kelio pavadinimą. Tačiau negalite iškviesti Dir funkcijos rekursyviai. Iškvietus Dir su atributu vbDirectory , pakatalogiai nuolat negrąžinami.

Patarimas Failų vardai nuskaitomi nenurodyta tvarka, todėl galbūt norėsite grąžintus failų vardus saugoti masyve, tada jį surikiuoti.

Pavyzdys

Pastaba

Pateiktuose pavyzdžiuose parodyta, kaip naudoti šią funkciją „Visual Basic for Applications“ (VBA) modulyje. Daugiau informacijos apie darbą su VBA rasite išplečiamajame sąraše pasirinkę Kūrėjų nuoroda (šalia Ieškos) ir ieškos lauke įvedę vieną ar daugiau sąlygų.

Šiame pavyzdyje naudojama funkcija Dir norint patikrinti, ar yra tam tikrų failų ir katalogų. Programoje "Macintosh" numatytasis disko pavadinimas yra "HD:", o kelio pavadinimo dalys atskirtos dvitaškiais, o ne kairėn pasvirusiais brūkšniais. Be to, Windows pakaitos simboliai Macintosh sistemoje laikomi leistinais failo vardo simboliais. Tačiau failų grupėms nurodyti galite naudoti funkciją "MacID ".

Dim MyFile, MyPath, MyName
' Returns "WIN.INI" (on Microsoft Windows) 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 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.
    ' Ignore the current directory and the encompassing directory.
    If MyName <> "." And MyName <> ".." Then
        ' Use bitwise comparison to make sure MyName is a directory.
        If (GetAttr(MyPath & MyName) And vbDirectory) = vbDirectory Then
            Debug.Print MyName    ' Display entry only if it
        End If    ' it represents a directory.
    End If
    MyName = Dir    ' Get next entry.
Loop