DerMirkerAutorytet
0piorunówCześć, jak napisać w C# kod, który zwróci mi plik z datą dzień wcześniej?
Poniższy kod dla dzisiaj działa:
_System.IO.Directory.GetFiles("ZmiennaFolderu","*.xlsx").OrderByDescending(Function(d) New FileInfo(d).CreationTime).ToList(0)_
Chciałem zrobić coś analogicznego dla wczoraj i nie działa:
_System.IO.Directory.GetFiles("ZmiennaFolderu","*.xlsx").OrderByDescending(Function(d) New FileInfo(d).CreationTime.AddDays(-1)).ToList(0)_
using System;
class Program
{
static void Main()
{
DateTime dzisiaj = DateTime.Now;
DateTime wczoraj = dzisiaj.AddDays(-1);
string nazwaPliku = $"plik_{wczoraj.ToString("yyyyMMdd")}.txt";
Console.WriteLine(nazwaPliku);
}
}
@Spider dzięki, ale potrzebuję to mieć w jednej linijce
@DerMirker aa ok
@Spider zrobił to. Kod działa, jestem zdumiony :grimacing:
System.IO.Directory.GetFiles(ZmiennaFolderu, "*.xlsx").Where(Function(d) New FileInfo(d).CreationTime.Date = Date.Today.AddDays(-1)).OrderByDescending(Function(d) New FileInfo(d).CreationTime).FirstOrDefault()
@DerMirker czy ten kod dokonuje odjęcia o 1? Wiesz jaką datę ci zwróci jak będziesz miał 1 dzień miesiąca? 0.
Nie możesz po prostu generować tego pliku z aktualną datą i jej użyć jutro?
Nie znam c# ale to operuje na dacie, a nie dniu miesiaca, wiec wyglada ok
@DerMirker rzeczywiście jeśli operuje na kalendarzu to pewnie zadziała, ale niech lepiej sprawdzi xD
