[id] = OpenDirectory(id, dir$[, table])
dir$
angegebene Verzeichnis und
ordnet ihm die angegebene id
zu. Wenn Sie Nil in id
angeben, wird OpenDirectory()
automatisch eine freie ID auswählen und ihnen
zurückgeben. Das Verzeichnis kann dann anschließend unter Verwendung
des Befehls NextDirectoryEntry() auf weitere
Unterverzeichnisse überprüft werden, womit Sie Lowlevel-Zugriff auf das
Verzeichnis haben. Das ist besonders für große Verzeichnisse nützlich,
oder wenn Sie zusätzliche Informationen wie Größe/Attribute
für die einzelnen Verzeichniseinträge benötigen. Sie können das sehr schnell
mit einer Schleife erreichen, wie es im Beispiel unten dargestellt ist.
Ab Hollywood 6.0 hat dieser Befehl ein optionales Argument
table
, das verwendet werden kann, um zusätzliche Parameter
zu übergeben. Zur Zeit werden folgende Elemente erkannt:
Adapter:
UserTags:
Sie sollten den Befehl CloseDirectory() aufrufen, sobald Sie mit dem Verzeichnis fertig sind. Dies stellt sicher, dass das Verzeichnis nicht durch das Dateisystem länger gesperrt bleibt als nötig.
Dieser Befehl ist auch als Präprozessor-Anweisung verfügbar: Verwenden Sie @DIRECTORY, um ganze Verzeichnisse mit Ihrem Applet oder der ausführbaren Datei zu verknüpfen.
Siehe auch MonitorDirectory().
id
angegeben haben (siehe oben)OpenDirectory(1, "Data") e = NextDirectoryEntry(1) While e <> Nil NPrint(IIf(e.type = #DOSTYPE_FILE, "File:", "Directory:"), e.name) e = NextDirectoryEntry(1) Wend CloseDirectory(1)Der obige Code öffnet das Verzeichnis "Data" und gibt alle Dateien und Verzeichnisse aus.