Questo pezzetto di codice inserisce in un ArrayList
tutti i nomi dei files contenuti in tutte le sottocartelle di ua cartella
iniziale passata come parametro...
Sicuramente mi è sfuggito il metodo del framework che fa la stessa cosa 100
volte meglio, ma mi è servito per "ricordarmi" come fare una funzione
ricorsiva...
Qualsiasi suggerimento per migliorarla è ben accetto, solo... andateci piano
con gli insulti :)
private void Start(string directoryIniziale)
{
ArrayList arrayList = new ArrayList();
DirectoryInfo di = new DirectoryInfo(directoryIniziale);
SearchFiles(di);
arrayList.TrimToSize();
Debug.WriteLine(arrayList.Count);
}
private void SearchFiles(DirectoryInfo dirinfo)
{
FileSystemInfo[] dirs = dirinfo.GetDirectories();
foreach (DirectoryInfo diNext in dirs)
{
FileInfo[] fi = diNext.GetFiles();
foreach(FileInfo f in fi)
{
arrayList.Add(f.FullName);
}
foreach(DirectoryInfo nextdir in diNext.GetDirectories())
{
SearchFiles(nextdir);
}
}
}
powered by IMH0 1.1