Die älteste Textdatei finden C#?
DateTime access = Directory.GetLastAccessTime("Test");
wie kann ich damit die älteste Texzdatei finden mit eine Methode?
2 Antworten
Du gehst alle Dateien durch, und vergleichst die AccessTimes.
long oldest = 0;
for(.....) {
if(oldest < accessTimederaktuellenDatei) {
oldest = accessTimederaktuellenDatei;
}
}
Evtl. speicherst du dir noch die Datei ab, das ist jetzt nur nen Code, nen Beispielcode der die Funktion darstellt wie du das findest, muss in C# also in der Realität nicht funktionieren.
Die Schleife brauchst du um alle Elemente in deinem Wunschordner abzubilden. Ob du da foreach nutzt oder wie auch immer das in C# heißt, oder wat anderes ist egal, Hauptsache es funktioniert und ist effizient.
Wenn ich nur Textdateien suche, dann muss ich irgendwo *.txt schreiben, aber ich weiß nicht wo.
Dann gehst du trotzdem alle Files im Ordner durch, dann kannst du aber ne zusätzliche If-Abfrage in die Schleife einbauen und beim Dateinamen(der hoffentlich ein String ist) mal EndsWith machen also EndsWith(".txt") wenn true = textdatei
https://docs.microsoft.com/de-de/dotnet/api/system.string.endswith?view=netcore-3.1
// using System.IO;
// using System.Linq;
var file = new DirectoryInfo("C:\\").EnumerateFiles("*.txt").OrderBy(f => f.LastWriteTime).Last().FullName;
Auch eine möglich, ich bin nicht so C# affin wie du, danke.
Du gehst alle Dateien durch, und merkst dir immer die mit dem ältesten Datum.
Wenn eine neue Datei älter ist als die momentan gemerkte, wird die neue Datei gemerkt.
Kann ich das mit alle schleifen machen?