Rekursive Suche funktioniert bei mir nicht richtig

Übersicht BlitzBasic Allgemein

Neue Antwort erstellen

blitzuser34

Betreff: Rekursive Suche funktioniert bei mir nicht richtig

BeitragFr, Jan 04, 2008 12:22
Antworten mit Zitat
Benutzer-Profile anzeigen
Hab folgenden Code:

Code: [AUSKLAPPEN]
Graphics 1280,1024,32,1
Suche("C:")

Function Suche(dir$)
Verz=ReadDir(dir$)
Repeat
   Datei$=Lower(NextFile$(Verz))
   If datei$<>"."
   If datei$<>".."
   If datei$="" Exit
   If FileType(dir$+"\"+Datei$) = 2 Then
      Suche(dir$+"\"+Datei$)
   Else
      Print dir$+"\"+Datei$
   End If
   EndIf
   EndIf
Forever
CloseDir Verz
End Function


Nach ner Weile kommt aber "Directory does not Exist".
 

Dreamora

BeitragFr, Jan 04, 2008 12:27
Antworten mit Zitat
Benutzer-Profile anzeigen
Führ das ganze im debug modus aus und schau was datei dann für nen wert wart ... dann weisst du woher das problem kommt.
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.

blitzuser34

BeitragFr, Jan 04, 2008 12:35
Antworten mit Zitat
Benutzer-Profile anzeigen
Immer wenn sich des aufhängt(mein Browser), schickt des den Post gleich mehrmals Raus. Sorry wegen Tribbleposting!

Edit: Passiert mir leider öfter Embarassed .

Wegen Programm: Hab des Problem auch bei Suchen aus dem Forum. Da kommt des gleiche!

Hier das Bild:

http://www.bilder-space.de/sho...Nd2gDa.JPG
 

Dreamora

BeitragFr, Jan 04, 2008 13:03
Antworten mit Zitat
Benutzer-Profile anzeigen
du musst überprüfen ob verz nach opendir <> 0 ist, das ist der grund warums abserbelt.

du bist da in einem $XXXX ordner drin, die sind zugriffsgelockt
deswegen geben die beim opendir auch ne 0 zurück wie du in deinem debugfenster siehst
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.

blitzuser34

BeitragFr, Jan 04, 2008 13:14
Antworten mit Zitat
Benutzer-Profile anzeigen
Danke, jetzt funktioniert's.

Edit:

Wer's brauchen kann, hier eine fertige Suchfunktion:

suche$ kann ein Teil des Dateinamens sein oder die Dateierweiterung

Code: [AUSKLAPPEN]
Function Suche(dir$, suche$)
Verz=ReadDir(dir$)
If verz<>0 Then
   Repeat
      Datei$=Lower(NextFile$(Verz))
      If datei$<>"."
         If datei$<>".."
         If datei$="" Exit
      
         If FileType(dir$+"\"+Datei$) = 2 Then
            Suche(dir$+"\"+Datei$,suche$)
         Else
            If Instr (Datei$, suche$)<>0 Then Print dir$+"\"+Datei$
         End If
      
         EndIf
      EndIf
   Forever
EndIf
CloseDir Verz
End Function

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group