IBM Lotus Symphony
|
Returnerer navnet på en fil, et bibliotek eller alle de filer og biblioteker på et drev eller i et bibliotek, som svarer til den angivne søgesti.
Dir [(Tekst As String) [, Attrib As Integer]]
String
Tekst: Et strengudtryk, der angiver søgestien, biblioteket eller filen. Argumentet kan kun angives, første gang du kalder Dir-funktionen. Det er tilladt at skrive stien med URL-notation.
Attrib: Et heltalsudtryk, som angiver et bitmønster med filattributter. Dir-funktionen returnerer kun filer eller biblioteker, som passer til de angivne attributter. Du kan kombinere flere attributter ved at lægge attributværdierne sammen:
0 : Almindelige filer.
16 : Returnerer kun navnet på biblioteket.
Med denne attribut kan du kontrollere, om en fil eller et bibliotek findes, eller finde frem til alle filer og mapper i et angivet bibliotek.
Skriv hele stien og navnet på filen, hvis du vil kontrollere, om den findes. Dir-funktionen returnerer en tom streng (""), hvis fil- eller biblioteksnavnet ikke findes.
Sådan kan du oprette en liste med alle eksisterende filer i et bestemt bibliotek: Angiv den fuldstændige søgesti til filerne, f.eks. "D:\Filer\*.sxw", første gang du kalder Dir-funktionen. Hvis stien er rigtig, og mindst én fil findes i søgningen, returnerer Dir-funktionen navnet på den første fil, som passer til søgestien. Du kan få returneret yderligere filnavne, som passer til stien, ved at kalde Dir igen, men uden argumenter.
Brug attributparameteren, hvis du kun vil have returneret biblioteker. Det samme gælder, hvis du vil finde navnet på et drev (f.eks. en partition på en harddisk).
Sub DirEksempel
REM Viser alle filer og biblioteker
Dim sSti As String
Dim sBib as String, sVaerdi as String
sBib="Biblioteker:"
sSti = CurDir
sVaerdi = Dir$(sSti + getPathSeparator + "*",16)
Do
If sVaerdi <> "." and sVaerdi <> ".." Then
if (GetAttr( sSti + getPathSeparator + sVaerdi) AND 16) >0 then
REM hent bibliotekerne
sBib = sBib & chr(13) & sVaerdi
End If
End If
sVaerdi = Dir$
Loop Until sVaerdi = ""
MsgBox sBib,0,sSti
End Sub