vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#

https://www.vbarchiv.net
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:  Views:  15.051 
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"



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.
 
 
Copyright ©2000-2024 vb@rchiv Dieter OtterAlle 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.