2012-05-19 21 views
8

Ich habe einige Code:Nur Unterordner in C# auflisten?

string pathUser = Environment.GetFolderPath(Environment.SpecialFolder.UserProfile); 
string pathDownload = Path.Combine(pathUser, @"documents\iracing\setups\"); 
DirectoryInfo dinfo = new DirectoryInfo(pathDownload); // Populates field with all Sub Folders 
FileInfo[] Files = dinfo.GetFiles("*.sto"); 
foreach (FileInfo file in Files) 
{ 
    listBox2.Items.Add(file.Name); 
} 

Ich möchte die Unterordner von: documents\iracing\setups\ gezeigt werden, nicht die Dateien ... einschließlich der .sto Dateien. Alles, was ich brauche, ist die Unterordner aufzulisten .... Ich habe keine Ahnung, wie das geht? Vielen Dank!

Antwort

16

Sie können dies versuchen:

DirectoryInfo directory = new DirectoryInfo(pathDownload); 
DirectoryInfo[] directories = directory.GetDirectories(); 

foreach(DirectoryInfo folder in directories) 
    listBox2.Items.Add(folder.Name); 
+0

Wie würde ich das tun, um meine Listbox2 mit diesen Unterordnern zu füllen? –

+1

Perfekt! Tahanks !! –

1

Verwenden Sie EnumerateDirectories oder GetDirectories anstelle von GetFiles, wenn Sie ... Verzeichnisse erhalten möchten.

+0

Also, was ich in der() 's setzen? : FileInfo [] Dateien = dinfo.GetDirectories(); –

+0

@EliteGamer - Hast du die Links gelesen? Sie müssen wirklich lernen, Dokumentation zu lesen. Der Rückgabetyp und die erforderlichen Parameter (falls vorhanden) werden aufgelistet. – Oded

+0

Entschuldigung, ich wusste nicht einmal, wo Links ... –

2

Verwenden Sie einfach diese Funktion

string pathUser = Environment.GetFolderPath(Environment.SpecialFolder.UserProfile); 
string pathDownload = Path.Combine(pathUser, @"documents\iracing\setups\"); 
DirectoryInfo dinfo = new DirectoryInfo(pathUser); // Populates field with all Sub Folders 
DirectoryInfo[] directorys = dinfo.GetDirectories(); 
foreach (DirectoryInfo directory in directorys) 
{ 
    listBox2.Items.Add(directory.Name); 
} 
+0

Großartig! Danke für die Antwort!! –

+1

Gern geschehen. –

Verwandte Themen