Abfrage ob irgendwas in einem Verzeichnis vorhanden ist.
Moderator: Moderatoren
- mini990
- 1000 working lines a day
- Beiträge: 592
- Registriert: Sa, 28. Jan 2006 9:44
- Wohnort: Berg-Richtheim bei Neumarkt i.d.Opf.
- Danksagung erhalten: 1 Mal
Abfrage ob irgendwas in einem Verzeichnis vorhanden ist.
Hallo,
wie kann ich abfragen ob in einem Verzeichnis ein beliebiges Unterverzeichnis vorhanden ist?
Es sind keine Dateien im Verzeichnis, sondern nur (ggf.9 ein oder mehrere Untervrzeichnisse.
Gruß Stefan
wie kann ich abfragen ob in einem Verzeichnis ein beliebiges Unterverzeichnis vorhanden ist?
Es sind keine Dateien im Verzeichnis, sondern nur (ggf.9 ein oder mehrere Untervrzeichnisse.
Gruß Stefan
- Schubi
- Rekursionen-Architekt
- Beiträge: 139
- Registriert: Mi, 05. Okt 2005 15:10
- Wohnort: Wiesloch
- Hat sich bedankt: 5 Mal
Re: Abfrage ob irgendwas in einem Verzeichnis vorhanden ist.
Hallo Stefan,
FExists(cDir, "D") oder Directory(cDir, "D")
FExists(cDir, "D") oder Directory(cDir, "D")
Grüße Steffen
-
- Der Entwickler von "Deep Thought"
- Beiträge: 2830
- Registriert: Fr, 08. Feb 2008 21:29
- Hat sich bedankt: 97 Mal
- Danksagung erhalten: 13 Mal
Re: Abfrage ob irgendwas in einem Verzeichnis vorhanden ist.
Hallo, Stefan -
aDir := Directory(cWo + "\*.*", "DHS")
Das sollte helfen.
aDir := Directory(cWo + "\*.*", "DHS")
Das sollte helfen.
Liebe Grüsse aus der Eifel,
Georg S. Lorrig
Redakteur der Wiki des Deutschprachigen Xbase-Entwickler e.V.
Georg S. Lorrig
Redakteur der Wiki des Deutschprachigen Xbase-Entwickler e.V.
- mini990
- 1000 working lines a day
- Beiträge: 592
- Registriert: Sa, 28. Jan 2006 9:44
- Wohnort: Berg-Richtheim bei Neumarkt i.d.Opf.
- Danksagung erhalten: 1 Mal
Re: Abfrage ob irgendwas in einem Verzeichnis vorhanden ist.
Directory gibt auch bei leerem Verzeichnis den Wert 1 zurück
Fexists gibt immer ein .T. zurück
das hatte ich schon probiert.....
Gruß Stefan
Fexists gibt immer ein .T. zurück
das hatte ich schon probiert.....
Gruß Stefan
- Jan
- Marvin
- Beiträge: 14660
- Registriert: Fr, 23. Sep 2005 18:23
- Wohnort: 49328 Melle
- Hat sich bedankt: 21 Mal
- Danksagung erhalten: 88 Mal
- Kontaktdaten:
Re: Abfrage ob irgendwas in einem Verzeichnis vorhanden ist.
Stefan,
wie Schubi schrieb: Mach ein aDirectory := Directory(Verzeichnisname, "D") drauf, und dann ein nPosition := AScan(aDirectory, Verzeichnisname) da drauf. Ist nPosition >= 1, gibt es das Verzeichnis. Sonst nicht.
Jan
wie Schubi schrieb: Mach ein aDirectory := Directory(Verzeichnisname, "D") drauf, und dann ein nPosition := AScan(aDirectory, Verzeichnisname) da drauf. Ist nPosition >= 1, gibt es das Verzeichnis. Sonst nicht.
Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
-
- Der Entwickler von "Deep Thought"
- Beiträge: 2830
- Registriert: Fr, 08. Feb 2008 21:29
- Hat sich bedankt: 97 Mal
- Danksagung erhalten: 13 Mal
Re: Abfrage ob irgendwas in einem Verzeichnis vorhanden ist.
Hallo,
also ...
Es gibt - auch unter Windows - immer noch die beiden Pseudo-Verzeichnisse "." und "..", wie mein kleines Beispiel zeigt. Wenn man diese herausfiltert, d.h. wenn nLen > 2 ist, dann gibt es noch beliebige Verzeichnisse.
also ...
Code: Alles auswählen
#INCLUDE "AppEvent.CH"
#INCLUDE "Directry.CH"
#INCLUDE "Xbp.CH"
FUNCTION Main()
Local aDir
Local nI, nLen
aDir := Directory("*.*", "DHS")
nLen := Len(aDir)
FOR nI := 1 TO nLen
IF aDir[nI, F_ATTR] == "D"
? aDir[nI, F_NAME]
ENDIF
NEXT
WAIT
RETURN (.T.)
Liebe Grüsse aus der Eifel,
Georg S. Lorrig
Redakteur der Wiki des Deutschprachigen Xbase-Entwickler e.V.
Georg S. Lorrig
Redakteur der Wiki des Deutschprachigen Xbase-Entwickler e.V.
- brandelh
- Foren-Moderator
- Beiträge: 15703
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 70 Mal
- Danksagung erhalten: 34 Mal
- Kontaktdaten:
Re: Abfrage ob irgendwas in einem Verzeichnis vorhanden ist.
was genau ist "irgendwas" ?
Code: Alles auswählen
FExists(cDir, "D")
prüfen ob ein Verzeichnis existiert, nicht ob darin etwas ist ....*---------------------------------------------------------------------------
function IsDir(cDirName) // keine Wildcards erwünscht
cDirName := strTran(cDirName,"?",chr(255))
cDirName := strTran(cDirName,"*",chr(255)+chr(255))
return File(cDirName, "D")
Wenn du wissen willst, ob Dateien im Verzeichnis sind, musst du
Directory( [<cDirectory>], [<cAttribute>] ) --> aDirectory
verwenden und - am Besten in einer Funktion - das Array nach erwünschtem bzw. unerwünschtem durchsuchen.
Es könnte z.B. sein, dass nur ein Verzeichnis darin existiert, wenn man nach Verzeichnissen fragt findet man immer "." (das aktuelle) und ".." (das darüber liegende),
daher muss man sich selbst eine Funktion schreiben, die bewertet, was man als "irgendetwas" meint.
Gruß
Hubert
Hubert
- AUGE_OHR
- Marvin
- Beiträge: 12912
- Registriert: Do, 16. Mär 2006 7:55
- Wohnort: Hamburg
- Hat sich bedankt: 19 Mal
- Danksagung erhalten: 46 Mal
Re: Abfrage ob irgendwas in einem Verzeichnis vorhanden ist.
hi,
"das" ein Verzeichnis existiert reicht mir nicht ... ich teste ob ich schreiben kann
"das" ein Verzeichnis existiert reicht mir nicht ... ich teste ob ich schreiben kann
Code: Alles auswählen
IF TestDir(cDir) > 0
ELSE
ENDIF
FUNCTION TestDir(cDir)
LOCAL nBytes := 0
LOCAL nHandle := FCreate( cDir+"TEST.$$$", FC_NORMAL )
IF nHandle == -1
ELSE
nBytes := FWrite( nHandle, "Test" )
FClose( nHandle )
ENDIF
RETURN nBytes
gruss by OHR
Jimmy
Jimmy