ในการรับไดเร็กทอรี C# ให้เมธอด Directory.GetDirectories เมธอด Directory.GetDirectories จะคืนค่าชื่อของไดเร็กทอรีย่อย (รวมถึงพาธ) ที่ตรงกับรูปแบบการค้นหาที่ระบุในไดเร็กทอรีที่ระบุ และอาจค้นหาไดเร็กทอรีย่อย
ในตัวอย่างด้านล่าง * คือการจับคู่อักขระศูนย์หรือมากกว่าในตำแหน่งนั้น SearchOption TopDirectoryOnly รับเฉพาะไดเร็กทอรีระดับบนสุด และ SearchOption AllDirectories รับไดเร็กทอรีด้านบนและไดเร็กทอรีย่อยทั้งหมด
หมายเหตุ: rootPath จะเป็น rootPath ระบบของคุณ ดังนั้นให้สร้างโฟลเดอร์ทดสอบและใช้ rootPath อย่างเหมาะสม
ตัวอย่างที่ 1
static void Main (string[] args) { string rootPath = @"C:\Users\Koushik\Desktop\TestFolder"; string[] dirs = Directory.GetDirectories(rootPath, "*", SearchOption.TopDirectoryOnly); foreach (string dir in dirs) { Console.WriteLine (dir); } Console.ReadLine (); }
ผลลัพธ์
C:\Users\Koushik\Desktop\TestFolder\TestFolderMain C:\Users\Koushik\Desktop\TestFolder\TestFolderMain 1 C:\Users\Koushik\Desktop\TestFolder\TestFolderMain 2
ตัวอย่างที่ 2
static void Main (string[] args) { string rootPath = @"C:\Users\Koushik\Desktop\TestFolder"; string[] dirs = Directory.GetDirectories(rootPath, "*", SearchOption.AllDirectories); foreach (string dir in dirs) { Console.WriteLine (dir); } Console.ReadLine (); }
ผลลัพธ์
C:\Users\Koushik\Desktop\TestFolder\TestFolderMain C:\Users\Koushik\Desktop\TestFolder\TestFolderMain 1 C:\Users\Koushik\Desktop\TestFolder\TestFolderMain 2 C:\Users\Koushik\Desktop\TestFolder\TestFolderMain 2\TestFolderMainSubDirectory