Feedback

C# - Ordner und Dateien rekursiv durchlaufen

Veröffentlicht von am 06.07.2009
(2 Bewertungen)
using System.IO;
GFU-Schulungen  [Anzeige]

VB.NET 2017/2015/2013 Komplett

Ziel des Seminars ist der flexible Umgang mit VB.NET, wie z.B. die damit verbundene eigenständige Entwicklung von Programmen oder das Verwenden von Datenbanken.

JavaScript für .NET-Entwickler

Sie sind .NET-Entwickler und nun stehen Sie vor der Aufgabe, JavaScript in Ihre Arbeit einzubinden. Die Schulung vermittelt Ihnen die JavaScript Grundlagen und die Funktionen der Scriptsprache. Sie wissen, wie objektorientierte Programmierung in JavaScript funktioniert und lernen abschließend Best Practicies Fälle kennen.

        public void dirSearch(string strDir)
        {
            try
            {
                foreach (string strDirectory in Directory.GetDirectories(strDir))
                {
                    foreach (string strFile in Directory.GetFiles(strDirectory))
                    {
			// mach etwas....
                    }

                    dirSearch(strDirectory);
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
        }
Abgelegt unter Ordner, Dateien, rekursiv, durchlaufen.

2 Kommentare zum Snippet

Martin Dauskardt schrieb am 10.01.2011:
Bei dieser Methode fehlen alle Dateien im ersten Ordner (strDir).
Damit auch die Dateien in der ersten Ebene gefunden werden, sollte
es eher so aussehen:

public void dirSearch(string strDir)
{
try
{
foreach (string strFile in Directory.GetFiles(strDir))
{
//mach was..
}

foreach (string strDirectory in Directory.GetDirectories(strDir))
{
dirSearch(strDirectory);
}
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
}
Klemens Nanni schrieb am 10.01.2011:
M. Dauskardts Ansatz ist durchaus sinnvoller, wobei ich auf das Try..Catch verzichten würde. Sollte es wirklich von Nöten sein, halte ich es innerhalb der GetFiles-For..Each-Schleife für angebrachter.
 

Logge dich ein, um hier zu kommentieren!