Ordner durchsuchen

langer1801

Erfahrenes Mitglied
Hallo,
ich versuche, mit der CFileFind-Klasse einen Ordner auszulesen. Hier der Code-Rumpf.
Code:
   CFileFind finder;
	path=pView->GetFilePath()+"XML\\";
	BOOL bResult = finder.FindFile(path);
	if(bResult)
	{
		finder.FindNextFile();
		buffer=finder.GetFileName();
	}
Leider bekomme ich nie einen Zeiger auf ein in diesem Ordner befindliches File zurück. Habe hier im Forum schon gesucht, da es schon einige Threads gibt dazu. Habe aber keine HInweise gefunden, woran es liegen könnte. Mein Gedanke ist, daß man vielleicht zuerst den Ordner öffnen muß(?). Aber die CFileFind-Methode braucht eigentlich nur den Pfad. Und der Pfad stimmt - auch ein File ist im Ordner. Woran könnte es liegen?

Mfg

langer
 
Habe noch 'ne Weile experimentiert. Das Problem scheint zu sein, daß die FileFind-Methode beim ersten Aufruf (FindFile) einen File-Namen braucht. Wenn ich den gesamten File-Namen angebe, findet sie das File. Ich habe aber das Problem, daß ich zwar den Ordner kenne, aber nicht, ob und welche Files sich darin befinden. Und wenn ich im Pfad am Schluß statt des File-Namens "*.*" anhänge, bekomme ich als Ergebnis "." zurück.
Welche Möglichkeit gibt es noch, den Ordner zu durchsuchen?

Mfg

langer
 
Ok, habe 'ne Möglichkeit gefunden, aber nur, weil ich die Datei-Endung kenne. Wenn ich an den Pfad
Code:
*.xml
anhänge statt
Code:
*.*
dann klappt es. Würde mich aber trotzdem interessieren, was mache ich, wenn ich auch das nicht weiß?

Mfg

langer
 
Hi.

Es ist völlig normal wenn du die beiden Eintrage "." und ".." eines jeden Verzeichnisses als Ergebnis zurückbekommst. Normalerweise würde man die einfach überlesen und mit dem nächsten Eintrag weitermachen.
 
Danke für die Antwort, habe mich davon irreführen lassen, daß im Moment nur ein File im Ordner ist. Dann werde ich mal diese beiden Einträge ausblenden.

Mfg

langer
 
Zurück