Come ottenere la data corrente senza l'ora?


130

Sono in grado di ottenere la data e l'ora utilizzando:

DateTime now = DateTime.Now;

Come posso ottenere la data e l'ora correnti separatamente nel formato DateTime stesso?

Non sto usando la finestra di dialogo del selettore DateTime in ASP.NET (C #).

Risposte:


226

Bene, puoi ottenere solo la data odierna come DateTimeusando la Todayproprietà:

 DateTime today = DateTime.Today;

o più in generale, è possibile utilizzare la Dateproprietà. Ad esempio, se si desidera la data UTC, è possibile utilizzare:

 DateTime dateTime = DateTime.UtcNow.Date;

Non è molto chiaro se è quello che ti serve o meno ... se stai solo cercando di stampare la data, puoi usare:

Console.WriteLine(dateTime.ToString("d"));

o usa un formato esplicito:

Console.WriteLine(dateTime.ToString("dd/MM/yyyy"));

Ulteriori informazioni sulle stringhe di formato data / ora standard e personalizzate . A seconda della situazione, potresti anche voler specificare la cultura.

Se vuoi un'API data / ora più espressiva che ti consenta di parlare delle date separatamente dalle volte, potresti voler guardare il progetto Noda Time che ho avviato. Non è ancora pronto per la produzione, ma ci piacerebbe sapere cosa ti piacerebbe farci ...


33

Vedi, qui puoi ottenere solo la data passando una stringa di formato. È possibile ottenere un formato data diverso in base alle proprie esigenze come indicato di seguito per la data corrente:

DateTime.Now.ToString("M/d/yyyy");

Risultato: "9/1/2015"

DateTime.Now.ToString("M-d-yyyy");

Risultato: "9-1-2015"

DateTime.Now.ToString("yyyy-MM-dd");

Risultato: "2015-09-01"

DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss");

Risultato: "2015-09-01 09:20:10"

Per maggiori dettagli dai un'occhiata al riferimento MSDN per stringhe di formato di data e ora personalizzate



30

Ora attuale :

DateTime.Now.ToString("HH:mm:ss");

Data odierna :

DateTime.Today.ToString("dd-MM-yyyy");

11

È possibile utilizzare il seguente codice per ottenere la data e l'ora separatamente.

DateTime now = DateTime.Now;
string date = now.GetDateTimeFormats('d')[0];
string time = now.GetDateTimeFormats('t')[0];

Puoi anche controllare MSDN per ulteriori informazioni.


10

Non esiste alcun tipo di data solo incorporato in .NET.

La convenzione prevede l'utilizzo di a DateTimecon la porzione di tempo impostata su mezzanotte.

La DateTime.Todayproprietà statica ti darà la data di oggi.



0
string now = Convert.ToString(DateTime.Now.ToShortDateString());
Console.WriteLine(now);
Console.ReadLine();

0

per mese

DateTime.Now.ToString("MM");

per il giorno

DateTime.Now.ToString("dd");

per anno

DateTime.Now.ToString("yyyy");


0

Penso che occorrano parti della data separatamente come (giorno, mese, anno)

DateTime oggi = DateTime.Today;

Non funzionerà per il tuo caso. Puoi ottenere la data separatamente, quindi non è necessario che la variabile todaysia come DateTimeTipo, quindi lasciaci dare Tipo todayvariabile intperché il giorno è solo int. Quindi oggi è il 10 marzo 2020, quindi il risultato di

int today = DateTime.Today.Day;

int month = DateTime.Today.Month;

int year = DateTime.Today.Year;

MessageBox.Show (today.ToString () + "- questo è il giorno." + Month.ToString () + "- questo è il mese." + Year.ToString () + "- questo è l'anno");

sarebbe " 10 - questo è il giorno. 3 - questo è il mese. 2020 - questo è l'anno"

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.