C#:
Ottenere la data corrente
Come fare:
C# fornisce un modo semplice per ottenere la data corrente usando la classe DateTime
che fa parte del namespace System del .NET Framework. L’esempio sottostante dimostra come ottenere la data corrente, e, opzionalmente, l’ora.
using System;
class Program
{
static void Main()
{
// Ottiene solo la data corrente
DateTime currentDate = DateTime.Today;
Console.WriteLine(currentDate.ToString("d")); // Output: MM/dd/yyyy
// Ottiene la data e l'ora corrente
DateTime currentDateTime = DateTime.Now;
Console.WriteLine(currentDateTime.ToString()); // Output: MM/dd/yyyy HH:mm:ss
// Ottiene la data e l'ora corrente UTC
DateTime currentUtcDateTime = DateTime.UtcNow;
Console.WriteLine(currentUtcDateTime.ToString()); // Output: MM/dd/yyyy HH:mm:ss
}
}
In termini di librerie di terze parti, NodaTime offre una robusta alternativa per la manipolazione di date e ora, includendo il recupero della data corrente in diversi calendari e fusi orari.
using NodaTime;
using System;
class Program
{
static void Main()
{
// Utilizzando NodaTime per ottenere la data corrente nel calendario ISO
LocalDate currentDate = SystemClock.Instance.GetCurrentInstant().InUtc().Date;
Console.WriteLine(currentDate.ToString()); // Output: yyyy-MM-dd
// Per date specifiche del fuso orario
DateTimeZone zone = DateTimeZoneProviders.Tzdb["America/New_York"];
LocalDate currentZonedDate = SystemClock.Instance.GetCurrentInstant().InZone(zone).Date;
Console.WriteLine(currentZonedDate.ToString()); // Output: yyyy-MM-dd
}
}
Questo mostra l’utilizzo di base con la classe DateTime
integrata e le capacità avanzate fornite da NodaTime, particolarmente utili per applicazioni che richiedono la gestione di diversi fusi orari o sistemi di calendario.