Nach Datei suchen

Für allgemeine Fragen zur Programmierung mit PureBasic.
mbuettner
Beiträge: 88
Registriert: 14.05.2010 15:53
Computerausstattung: 3 GB RAM, Windows 7 32-Bit Home Premium
Wohnort: daheim
Kontaktdaten:

Nach Datei suchen

Beitrag von mbuettner »

Hallo,

ich wollte mal fragen, ob es möglich ist, mit Purebasic eine oder mehrere Dateien zu suchen. Also folgendes:
-Programmstart
-Dateisuche
Ich habe keinen entsprechenden Befehl gefunden (es sei denn, ich habe ihn überlesen).
Bild
Bild
Die täglich beförderte Datenmenge des Internets beträgt 415 Petabyte oder 445.602.856.960 Megabyte!
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Re: Nach Datei suchen

Beitrag von ts-soft »

Als erstes mal in der Hilfe ExamineDirectory studieren. Danach hier nochmal nach
Rekursive Funktion suchen.

Einfachen Befehl wie SucheMir(Datei.s) gibt es leider nicht :wink:

Gruß
Thomas
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
Shadow-Gamer
Beiträge: 152
Registriert: 06.09.2009 13:31
Computerausstattung: NB: Intel P8700, Mobility ATI HD4650, 4GB, Win 7

Re: Nach Datei suchen

Beitrag von Shadow-Gamer »

vielleicht gibts im codearchiv auch schon was entsprechendes als beispiel, zu finden auf http://www.purearea.net
Ich versuche ja nicht faul zu sein. :)
Benutzeravatar
KeauHou
Beiträge: 133
Registriert: 23.06.2009 00:22
Computerausstattung: Q9550, GTX260, Corsair Dominator 4GB 1066mhz, 22" Asus 16:10
Wohnort: Vorm Monitor
Kontaktdaten:

Re: Nach Datei suchen

Beitrag von KeauHou »

Was du suchst ist vermutlich eine rekursive Funktion zum durchsuchen von Verzeichnissen.

Code: Alles auswählen

Global NewList Files.s()

Procedure Recursive_Search(sPath.s)
  Protected iCurrDir.i, sName.s
  iCurrDir = ExamineDirectory(#PB_Any, sPath.s, "*.*")
  If iCurrDir
    While NextDirectoryEntry(iCurrDir)
      sName = DirectoryEntryName(iCurrDir)
      If  sName <> "." And sName <> ".."                
        If DirectoryEntryType(iCurrDir) = #PB_DirectoryEntry_File
          AddElement(Files())
          Files() = sPath + "\" + sName
        Else
          Recursive_Search(sPath + "\" + sName)
        EndIf
      EndIf  
    Wend                      
    FinishDirectory(iCurrDir)
  EndIf
EndProcedure
Bei nem Aufruf speichert das ALLE gefundenen Dateien in der Linked List Files(). Kannst du ja so modifizieren dass nur Dateien mit bestimmtem Namen oder genau die Datei die du suchst in die Liste kommen, je nachdem wie du das brauchst.

MfG
KeauHou
If x = 1 and x = 2
MessageRequester("!!!", "WTF")
EndIf
Es ist möglich!
Benutzeravatar
CSHW89
Beiträge: 489
Registriert: 14.12.2008 12:22

Re: Nach Datei suchen

Beitrag von CSHW89 »

Dafür gibt doch die tollen neuen FAQs:

http://www.purebasic.fr/german/viewtopi ... 76#p270676
ganz unten
Wie kann man mit ExamineDirectory() auch Unterverzeichnisse auslesen?
lg kevin
Bild Bild Bild
http://www.jasik.de - Windows Hilfe Seite
padawan hat geschrieben:Ich liebe diese von hinten über die Brust ins Auge Lösungen
Antworten