vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
NEU! sevCoolbar 3.0 - Professionelle Toolbars im modernen Design!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück
Rubrik: Dateisystem · Ordner & Verzeichnisse   |   VB-Versionen: VB200812.12.08
Dateien eines Ordners mittels LINQ filtern und sortieren

Mittels der LINQ-Funktionalität im .NET Framework 3.5 lässt sich eine Dateiliste über ein bestimmtes Verzeichnis ganz einfach und schnell ermitteln.

Autor:   DaveSBewertung:     [ Jetzt bewerten ]Views:  15.027 
ohne HomepageSystem:  Win2k, WinXP, Win7, Win8, Win10, Win11 Beispielprojekt auf CD 

LINQ - eine wunderbare Neuerung im .NET Framework 3.5!

Heute stellen wir ein paar kleine Codeausschnitte vor, mit denen sich alle oder nur bestimmte Dateien eines Ordners mittels LINQ ermitteln lassen. Auch eine Sortierung der Dateiliste nach Name, Änderungsdatum oder auch Erstellungsdatum ist hiermit ganz einfach.

Alle Dateien eines Ordners ermitteln und in einer ListBox sortiert nach Namen anzeigen

Dim di As New IO.DirectoryInfo("c:\windows")
 
' LINQ-Abfragestring
' alle Dateien
' nach Name sortieren
ListBox1.DataSource = (From fi As IO.FileInfo In di.GetFiles() _
  Order By fi.Name).ToList
ListBox1.DisplayMember = "Name"

Alle Dateien eines Ordners ermitteln und sortiert nach Erstellungsdatum ausgeben

Dim di As New IO.DirectoryInfo("c:\windows")
 
' LINQ-Abfragestring
' alle Dateien
' nach Erstellungsdatum sortieren
ListBox1.DataSource = (From fi As IO.FileInfo In di.GetFiles() _
  Order By fi.CreationTime).ToList
ListBox1.DisplayMember = "Name"

Nur Textdateien eines Ordners ermitteln und sortiert nach Änderungsdatum ausgeben

Dim di As New IO.DirectoryInfo("c:\windows")
 
' LINQ-Abfragestring
' nur Textdateien (*.txt)
' nach Änderungsdatum sortieren
ListBox1.DataSource = (From fi As IO.FileInfo In di.GetFiles() _
  Where fi.Extension Like ".txt" Order By fi.LastAccessTime).ToList
ListBox1.DisplayMember = "Name"

Alle JPG-Dateien eines Ordners ermitteln, die nicht älter als 3 Monate sind

Dim di As New IO.DirectoryInfo("c:\windows")
 
' LINQ-Abfragestring
' nur Textdateien (*.txt)
' nach Änderungsdatum sortieren
ListBox1.DataSource = (From fi As IO.FileInfo In di.GetFiles() _
  Where fi.Extension Like ".jpg" And fi.CreationTime > Now.AddMonths(-3) _
  Order By fi.LastAccessTime).ToList
ListBox1.DisplayMember = "Name"

Dieser Tipp wurde bereits 15.027 mal aufgerufen.

Voriger Tipp   |   Zufälliger Tipp   |   Nächster Tipp

Über diesen Tipp im Forum diskutieren
Haben Sie Fragen oder Anregungen zu diesem Tipp, können Sie gerne mit anderen darüber in unserem Forum diskutieren.

Neue Diskussion eröffnen

nach obenzurück


Anzeige

Kauftipp Unser Dauerbrenner!Diesen und auch alle anderen Tipps & Tricks finden Sie auch auf unserer aktuellen vb@rchiv  Vol.6
(einschl. Beispielprojekt!)

Ein absolutes Muss - Geballtes Wissen aus mehr als 8 Jahren vb@rchiv!
- nahezu alle Tipps & Tricks und Workshops mit Beispielprojekten
- Symbol-Galerie mit mehr als 3.200 Icons im modernen Look
Weitere Infos - 4 Entwickler-Vollversionen (u.a. sevFTP für .NET), Online-Update-Funktion u.v.m.
 
   

Druckansicht Druckansicht Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel