none
GetFileName aus Directory.GetFiles RRS feed

  • Frage

  • Hallo,

    habe ein kleines Problem mit der Erstellung der Dateinamen.

    Ich habe ein List mit folgenden Aufruf

     List<string> list_master = new List<string>(Directory.GetFiles(@"s:\Produkte\bundles\MASTER_IPC\", "*.*", SearchOption.AllDirectories));

    nun wollte ich dann aus dieser Liste nur die Dateinamen haben und habe folgendes versucht

     List<string> list_master = new List<string>(Path.GetFileName(Directory.GetFiles(@"s:\Produkte\bundles\MASTER_IPC\", "*.*", SearchOption.AllDirectories)));

    aber irgendwie klappt das nicht.

    Wo liegt mein Fehler ??

    danke

    Cay

    Dienstag, 15. Januar 2013 10:40

Antworten

  • Hallo Cay,

    einmal die lange VErsion :

    List<string> files = new List<string>();
    			foreach (var file in System.IO.Directory.GetFiles("PFAD"))
    			{
    				files.Add(System.IO.Path.GetFileName(file));
    			}

    und einmal mit LINQ :

    List<string> files = System.IO.Directory.GetFiles("PFAD").Select(file => System.IO.Path.GetFileName(file)).ToList();

    Grüße

    • Als Antwort markiert c_joksch Dienstag, 15. Januar 2013 11:24
    Dienstag, 15. Januar 2013 11:13

Alle Antworten

  • Path.GetFilename extrahiert dir aus EINEM Pfad + Dateiname nur den Dateinamen OHNE Pfad.

    Du müsstest also durch die Files aus GetFiles iterieren und für jede Datei die Methode aufrufen und in eine Liste füllen.

    Grüße

    Dienstag, 15. Januar 2013 10:56
  • Hi,

    das würde bedeuten das ich alles durch eine schleife laufen lassen muss und dann in einem neuen Array oder List abspeicherre ???

    danke

    cay

    Dienstag, 15. Januar 2013 11:05
  • Hallo Cay,

    einmal die lange VErsion :

    List<string> files = new List<string>();
    			foreach (var file in System.IO.Directory.GetFiles("PFAD"))
    			{
    				files.Add(System.IO.Path.GetFileName(file));
    			}

    und einmal mit LINQ :

    List<string> files = System.IO.Directory.GetFiles("PFAD").Select(file => System.IO.Path.GetFileName(file)).ToList();

    Grüße

    • Als Antwort markiert c_joksch Dienstag, 15. Januar 2013 11:24
    Dienstag, 15. Januar 2013 11:13
  • Hi Pawel,

    super genau das suchte ich :)

    Danke

    Ist es auch möglich irgend wie zusagen das er ab einer bestimmten Ordner erst den Pafd aufzeichnen soll ??

    danke

    Cay

    Dienstag, 15. Januar 2013 11:21
  • Das müsstest du Manuelle machen, zB per RegularExpression.

    Dafür darfst du aber gerne einen neuen Thread aufmachen und diesen hier als als erledigt markieren (Einfach auf dem passendem Beitrag "Als Antwort markieren" drücken)

    Im neuem Thread formulierst du dann aus, was genau du willst (Siehe Forenregeln)

    Grüße

    Dienstag, 15. Januar 2013 11:23