Announcement

Collapse
No announcement yet.

Ordner nach einem Dateityp durchsuchen

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Ordner nach einem Dateityp durchsuchen

    Hallo, ich bin leider Anfänger mit Visual C++. Ich wollte nur wissen wie man einen Ordner nach einem Dateityp (bei mir: ".ttf") durchsucht. Allerdings sollten auch Unterordner durchsucht werden. Bei C++Builder habe ich das folgendermaßen realisiert:

    Code:
    TStringList *OrdnerDurchsuchen(String Ordnername, bool UnterordnerDurchsuchen)
    {
    
     TStringList *Dateiliste=new TStringList;
     TStringList *Ordnerliste=new TStringList;
    
     Ordnerliste->Add(ExcludeTrailingBackslash(Ordnername));
    
     DIR *Ordner;
     struct dirent *Objekt;
    
    
     //--- Alle Ordner Extrahieren ---//
    
     while(Ordnerliste->Count>0)
     {
    
      Ordner=opendir(Ordnerliste->Strings[0].c_str());
      if(Ordner==NULL)return NULL;
    
      while((Objekt=readdir(Ordner))!=NULL)
      {
    
       Application->ProcessMessages();
       if(Abbrechen==true) break;
    
       if(AnsiString(Objekt->d_name).SubString(1,1)!=".")
       {
    
        if(DirectoryExists(Ordnerliste->Strings[0]+"\\"+Objekt->d_name)==true) //Wenn es ein Ordner ist
        Ordnerliste->Add(Ordnerliste->Strings[0]+"\\"+Objekt->d_name);
    
    
        else if((FileExists(Ordnerliste->Strings[0]+"\\"+Objekt->d_name)==true)&&(LowerCase(ExtractFileExt(Ordnerliste->Strings[0]+"\\"+Objekt->d_name))==".ttf"))  //Wenn es eine Datei ist
        Dateiliste->Add(Ordnerliste->Strings[0]+"\\"+Objekt->d_name);
    
       }
    
      }
    
      Ordnerliste->Delete(0);
    
     }
    
    
     //--- Erfolg zurückgeben und Ordner schließen ---//
    
     delete Ordnerliste;
    
     if (closedir(Ordner)==-1)return NULL;
    
     return Dateiliste;
    
    }
    
    //---------------------------------------------------------------------------
    Vielen Dank für die Hilfe!

  • #2
    findfile,findfilenext

    sind API Funktionen
    Christian

    Comment

    Working...
    X