IBM Lotus Symphony
|
Palauttaa haettavaksi määritettyä polkua vastaavan, asemassa tai hakemistossa sijaitsevan tiedoston tai hakemiston nimen tai kaikkien kyseisten tiedostojen ja hakemistojen nimet.
Dir [(Text As String) [, Attrib As Integer]]
String (merkkijono)
Text: Mikä tahansa merkkijonolauseke, joka määrittää haettavan polun, hakemiston tai tiedoston. Argumentin voi määrittää vain, kun Dir-funktio kutsutaan ensimmäisen kerran. Halutessasi voit määrittää polun URL-osoitteiden esitysmuodossa.
Attrib: Mikä tahansa kokonaislukulauseke, joka määrittää tiedostomääritteitä bitteinä. Dir-funktio palauttaa vain määritettyjä määritteitä vastaavat tiedostot tai hakemistot. Voit yhdistää useita määritteitä lisäämällä seuraavia määritearvoja:
0: Tavalliset tiedostot.
16: Palauttaa vain hakemiston nimen.
Tämän määritteen avulla voit tarkistaa, onko tiedosto tai hakemisto järjestelmässä, tai selvittää kaikki tietyn hakemiston tiedostot ja kansiot.
Voit tarkistaa, onko tiedosto järjestelmässä, antamalla tiedoston koko polun ja nimen. Jos tiedoston tai hakemiston nimeä ei ole, Dir-funktio palauttaa merkkijonon, jonka pituus on nolla ("").
Voit muodostaa kaikki tietyn hakemiston tiedostot sisältävän luettelon seuraavasti: Kun kutsut Dir-funktion ensimmäisen kerran, määritä tiedostojen täydellinen hakupolku (esimerkiksi D:\Files\*.sxw). Jos polku on määritetty oikein ja haku löytää ainakin yhden tiedoston, Dir-funktio palauttaa ensimmäisen hakupolkua vastaavan tiedoston nimen. Voit palauttaa lisää polkua vastaavia tiedostonimiä kutsumalla Dir-funktion uudelleen ilman argumentteja.
Jos haluat palauttaa vain hakemistoja, käytä määriteparametria (Attrib). Noudata samoja ohjeita, kun haluat selvittää taltion nimen (esimerkiksi kiintolevyn osion nimen).
Sub ExampleDir
REM Näyttää kaikki tiedostot ja hakemistot
Dim sPath As String
Dim sDir as String, sValue as String
sDir="Directories:"
sPath = CurDir
sValue = Dir$(sPath + getPathSeparator + "*",16)
Do
If sValue <> "." and sValue <> ".." Then
if (GetAttr( sPath + getPathSeparator + sValue) AND 16) >0 then
REM Noutaa hakemistot
sDir = sDir & chr(13) & sValue
End If
End If
sValue = Dir$
Loop Until sValue = ""
MsgBox sDir,0,sPath
End sub