Announcement

Collapse
No announcement yet.

kurzer Dateinamen

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • kurzer Dateinamen

    Hallo zusammen
    Ich habe wieder einmal ein Problem, und zwar :
    Ich habe eine ListBox, inder alle Dateien eines Ordners aufgelistet sind.
    Im Moment steht noch z.B. : C:\Dokumente und Einstellungen\Test.log
    Ich möchte aber, dass nur Test.log steht , wie geht das
    Mein Code:
    Code:
    string[] Files = System.IO.Directory.GetFiles(@"C:\Programme\Tagebuch\Dokumente\");
                foreach (string Name in Files)
                {
                    DokumentListe.Items.Add(Name);
                }

  • #2
    Hallo,

    tja, die Zuordnung von bestimmten Methoden zu manchen Klassen ist nicht immer einleuchtend. Für Dateien und Verzeichnisse allgemein sind Directory, Path, File zuständig, für einzelne Objekte DirectoryInfo, FileInfo.

    Jetzt musst Du nur noch im Index der SDK-Doku/MSDN blättern, bis Du die passende Methode gefunden hast.

    Gruß Jürgen

    Comment


    • #3
      Wenn du nur die Dateinamen hast und kein extra Objekt für eine Datei anlegen willst, würd ichs mal mit Split() oder Substring() ausprobieren.
      Just be DRY and KISS your customers.

      Comment


      • #4
        Originally posted by Frischmilch View Post
        ... würd ichs mal mit Split() oder Substring() ausprobieren.
        Mach das bloß nicht, das ist viel zu umständlich! In einer der von mir genannten Klassen gibt es eine Methode, die (ohne extra Objekt) direkt den "nackten" Dateinamen zurückliefert. Jürgen

        Comment


        • #5
          Du kannst das doch es mit FileInfo machen code:

          string[] Files = System.IO.Directory.GetFiles(@"C:\");
          foreach (string Name in Files)
          {
          FileInfo test = new FileInfo(Name);
          DokumentListe.Items.Add(test.Name);
          }

          Gruß Kurzschluss-techniker

          Comment


          • #6
            ist doch viel zu umstänlich warum nicht einfach
            [highlight=c#]
            string[] Files = System.IO.Directory.GetFiles(@"C:\");
            foreach (string Name in Files)
            {
            DokumentListe.Items.Add(system.io.Path.GetFilename (Name));
            }
            [/highlight]
            Unsere Jugend ist unerträglich, unverantwortlich und entsetzlich anzusehen! - Aristoteles

            Comment


            • #7
              Ja ich habs jetzt
              Danke für die Antworten

              Methos

              Comment


              • #8
                Ich habe noch eine kurze Frage.
                Ich mache so etwas wie ein kleiner Explorer.
                Jetzt habe ich die kurzen Dateienamen, soweit so gut.
                Wenn man nun Doppelklick auf ein Item macht, soll er es ausführen, da ich aber nur den kurzen Dateinamen habe, findet er die Datei nicht.
                Wie kann ich die trotzdem irgendwo speichern ?

                Lg Methos

                Comment


                • #9
                  du legst den kompletten String mit Pfad als ValueMember an und Displaymember wird der kurze Dateinamen und dann sollte es auch funktionieren. Versuchs mal

                  Hier ein Beispiel aus der MSDN wie soetwas von statten gehen kann.
                  Unsere Jugend ist unerträglich, unverantwortlich und entsetzlich anzusehen! - Aristoteles

                  Comment

                  Working...
                  X