beebof Geschrieben 1. November 2002 Geschrieben 1. November 2002 ich nutzte vc++ mit mfc und möchte mir nun alle dateien in einem von mir festgelegten verzeichnis auslesen, um diese dann nacheinander zu verarbeiten. Wie geht sowas? :confused:
beebof Geschrieben 1. November 2002 Autor Geschrieben 1. November 2002 okay... vergesst es... hab nochmal gesucht http://fachinformatiker-world.de/forums/showthread.php?s=&threadid=18453&highlight=datei ich denke mal, dass wird mir helfen
Crush Geschrieben 1. November 2002 Geschrieben 1. November 2002 Ich habe mir zum Einlesen eines Verzeichnisses eine eigene kleine Klasse geschrieben: //DStrukturen.h #include <afxtempl.h> class DStrukturen { private: enum type {dir,file}; typedef struct cdFile {type Typ; CString cdfile; CString path;} CDFile; int files,dirs; CString Structpath; void readstructure(CDFile& newfile,CString& CDpath); public: CArray<CDFile> Branchlist; DStrukturen(CString CDpath); virtual ~DStrukturen() {Branchlist.RemoveAll();} void output() {int t=Branchlist.GetCount(); for (int i=0; i<t;i++) TRACE("%s\\%s\n",Branchlist[i].path,Branchlist[i].cdfile); TRACE("Dirs: %i Files: %i",dirs,files);} }; // .cpp #include "DStrukturen.h" DStrukturen::DStrukturen(CString CDpath="P:\\") { files=dirs=0; CDFile newfile; readstructure(newfile,CDpath); } void DStrukturen::readstructure(CDFile& newfile,CString& CDpath) { CFileFind finder; CString findpath=CDpath+"\\*.*"; BOOL loop= finder.FindFile(findpath); while (loop) { bWorking = finder.FindNextFile(); if (!finder.IsDots()) { newfile.path=CDpath; newfile.cdfile=finder.GetFileName(); if (finder.IsDirectory()) { dirs++; newfile.Typ=dir; readstructure(newfile,CDpath+"\\"+finder.GetFileName()); } else { files++; newfile.Typ=file; Branchlist.InsertAt(0,newfile); } } } } //Aufruf im Programm: DStrukturen str("C:"); // Erstellen des Reader-Objekts mit gleichzeitigem Einlesen der kompletten Directory-Strukur str.output(); // gibt erstmal alles ins Trace-Fenster aus.
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden