Ordner rekursiv durchsuchen

LordDeath

Erfahrenes Mitglied
Hi

Wie kann ich C# einen Ordner durchsuchen um alle Dateien zu erhalten die in dem Ordner sind ?

Hab da absolut keine Ahnung !

Weiß zwar das ich da eine Schleife brauch aber mehr auch nicht !

Vielleicht gibt es so was wie eine FileNext(); Funktion oder so die dann einfach den Dateiindex weiterspringt oder so !

Kann mir da jemand helfen ?

DarkGreetinx LordDeath
 
Wie bekommt man die Anzahl der Dateien in einem Verzeichnis heraus?
Gibt es da irgendeine Funktion dafür ?

DarkGreetinx LordDeath
 
Das funktioniert über die DirectoryInfo Classe, die mit dem using System.IO; implementiert wird. Diese kannst Du dann Instanzieren und auf ein bestimmtes Directory setzen. MIt GetFiles(*.*) Liefert dir das System ein Array an FileInfos zurück, wobei jedes element für ein File steht. Somit ist die Array.Length = die Anzahl angefundenen Files. Ich hoffe das hilft Dir weiter.

MfG
LieberNet
 
Original geschrieben von LieberNet
Das funktioniert über die DirectoryInfo Classe, die mit dem using System.IO; implementiert wird. Diese kannst Du dann Instanzieren und auf ein bestimmtes Directory setzen. MIt GetFiles(*.*) Liefert dir das System ein Array an FileInfos zurück, wobei jedes element für ein File steht. Somit ist die Array.Length = die Anzahl angefundenen Files. Ich hoffe das hilft Dir weiter.

MfG
LieberNet

Hallo.

GetFiles kannst du auch ohne Parameter aufrufen, hat die selbe Funktion wie ein "*.*" und liefert alle Dateiarten zurück. Wenn du mittels Paramter die Dateitypen/Namen einschränken willst, solltest du den Parameter allerdings in Anführungszeichen setzen.

Um die Verzeichnisse rekursiv duchzugehen schreibst du dir einfach eine Methode die einen Pfad als Parameter erwartet, und in diesem Pfad alle Unterverzeichnisse abklappert und mit den Pfaden dieser, die Methode erneut aufruft.

Code:
public void DirectoryBrowsing(string path)
{
	DirectoryInfo dir = new DirectoryInfo(path)
	
	foreach (DirectoryInfo subdir in dir.GetDirectories())
	{
		// Irgendwas mit dem Verzeichnis machen ..
		DirectoryBrowsing(subdir.Name);
	}

}

So siehts dann in etwa aus. Natürlich noch System.IO einbinden, wie schon erwähnt.

Mfg,
Alex
 
Also OK der Thread Name war unglücklich gewählt

Ich wollte eigentlich nur wissen wie ich dynamisch alle Dateinamen eines Ordners in ein feld packe um sie dann weiter zu verarbeiten

OK Sorry ich habs versaut !

THX :rolleyes:
DarkGreetinx LordDeath

PS: Ich versprech mich zu bessern !
 
Zurück