Um Dateien abzurufen, bietet C# eine Methode Directory.GetFiles
Directory.GetFilesGibt die Namen aller Dateien (einschließlich ihrer Pfade) zurück, die dem angegebenen Suchmuster entsprechen, und durchsucht optional Unterverzeichnisse.
Im folgenden Beispiel entspricht * null oder mehr Zeichen an dieser Position.
SearchOption TopDirectoryOnly. Nur Verzeichnisse der obersten Ebene durchsuchen
SearchOption AllDirectories .Alle Verzeichnisse und Unterverzeichnisse der obersten Ebene durchsuchen
FileInfo Dateilänge, Namen und andere Informationen abrufen
static void Main (string[] args) { string rootPath = @"C:\Users\Koushik\Desktop\TestFolder"; var files = Directory.GetFiles(rootPath, "*.*", SearchOption.AllDirectories); foreach (string file in files) { Console.WriteLine(file); } Console.ReadLine (); }
C:\Users\Koushik\Desktop\TestFolder\TestFolderMain\TestFolderMain.txt C:\Users\Koushik\Desktop\TestFolder\TestFolderMain 1\TestFolderMain1.txt C:\Users\Koushik\Desktop\TestFolder\TestFolderMain 2\TestFolderMain2.txt C:\Users\Koushik\Desktop\TestFolder\TestFolderMain 2\TestFolderMainSubDirectory\TestFolderSubDirectory.txt
static void Main (string[] args) { string rootPath = @"C:\Users\Koushik\Desktop\TestFolder"; var files = Directory.GetFiles(rootPath, "*.*", SearchOption.TopDirectoryOnly); foreach (string file in files) { Console.WriteLine(file); } Console.ReadLine (); }
C:\Users\Koushik\Desktop\TestFolder\Topdirectory.txt
static void Main (string[] args) { string rootPath = @"C:\Users\Koushik\Desktop\TestFolder"; var files = Directory.GetFiles(rootPath, "*.*", SearchOption.AllDirectories); foreach (string file in files) { var info = new FileInfo(file); Console.WriteLine($"{ Path.GetFileName(file) }: { info.Length } bytes"); } Console.ReadLine (); }
Das obige ist der detaillierte Inhalt vonWie bekomme ich alle Dateien, Unterdateien und ihre Größen in einem Verzeichnis in C#?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!