sistema - C#: ¿Cómo obtendré la hora actual en una cadena?
obtener mes actual c# (6)
¿Cómo podría obtener el tiempo actual de AM h / m / s en una cadena? ¿Y tal vez también la fecha en forma numérica (01/02/09) en otra?
DateTime.Now.ToString("h:mm tt") DateTime.Now.ToString("MM/dd/yyyy")
Aquí hay algunas cadenas de formato comunes
Puede usar cadenas de formato también.
string time = DateTime.Now.ToString("hh:mm:ss"); // includes leading zeros
string date = DateTime.Now.ToString("dd/MM/yy"); // includes leading zeros
o algunos atajos si el formato te funciona
string time = DateTime.Now.ToShortTimeString();
string date = DateTime.Now.ToShortDateString();
Cualquiera de los dos debería funcionar
Solo me gustaría señalar algo en estas respuestas. En una cadena de formato de fecha / hora, ''/'' se reemplazará con el separador de fecha del usuario , y '':'' se reemplazará con el separador de tiempo del usuario . Es decir, si he definido mi separador de fecha como ''.'' (en el subprograma de panel de control de Opciones regionales y de idioma, "intl.cpl"), y mi separador de tiempo es ''?'' (solo pretendemos que estoy loco así), entonces
DateTime.Now.ToString("MM/dd/yyyy h:mm tt")
volvería
01.05.2009 6?01 PM
En la mayoría de los casos, esto es lo que quiere, porque quiere respetar la configuración del usuario. Sin embargo, si necesita que el formato sea específico (por ejemplo, si alguien lo descifra por el cable), entonces debe escapar de estos caracteres especiales:
DateTime.Now.ToString("MM///dd///yyyy h//:mm tt")
o
DateTime.Now.ToString(@"MM//dd//yyyy h/:mm tt")
que ahora regresaría
01/05/2009 6:01 PM
EDITAR :
Por otra parte, si realmente desea respetar la configuración del usuario, debe usar una de las cadenas de formato de fecha / hora estándar, de modo que respete no solo las elecciones de separadores del usuario, sino también el formato general de la fecha y / o hora. .
DateTime.Now.ToShortDateString()
DateTime.Now.ToString("d")
Ambos devolverían "1/5/2009" utilizando las opciones estándar de EE. UU., O "05/01/2009" usando opciones estándar del Reino Unido, por ejemplo.
DateTime.Now.ToLongDateString()
DateTime.Now.ToString("D")
Ambos devolverían "Lunes, 05 de enero de 2009" en la localidad de EE. UU. O "05 de enero de 2009" en el Reino Unido.
DateTime.Now.ToShortTimeString()
DateTime.Now.ToString("t");
"6:01 PM" en EE. UU., "18:01" en el Reino Unido.
DateTime.Now.ToLongTimeString()
DateTime.Now.ToString("T");
"6:01:04 PM" en EE. UU., "18:01:04" en el Reino Unido.
DateTime.Now.ToString()
DateTime.Now.ToString("G");
"1/5/2009 6:01:04 PM" en EE. UU., "05/01/2009 18:01:04" en el Reino Unido.
Muchas otras opciones están disponibles. Consulte los documentos para cadenas de formato de fecha y hora estándar y cadenas de formato de fecha y hora personalizadas .
string t = DateTime.Now.ToString("h/m/s tt");
string t2 = DateTime.Now.ToString("hh:mm:ss tt");
string d = DateTime.Now.ToString("MM/dd/yy");
Tenga cuidado al acceder a DateTime.Now dos veces, ya que es posible que las llamadas lleguen a la medianoche y obtendrá raros resultados en raras ocasiones y se dejará rascándose la cabeza.
Para estar seguro, primero debe asignar DateTime.Now a una variable local si va a utilizarla más de una vez:
var now = DateTime.Now;
var time = now.ToString("hh:mm:ss tt");
var date = now.ToString("MM/dd/yy");
Tenga en cuenta que el uso de minúsculas "hh" muestra las horas desde 00-11, incluso por la tarde, y "tt" para mostrar AM / PM, según la pregunta solicitada. Si quiere un reloj de 24 horas 00-23, use "HH".
Método para obtener el sistema Fecha y hora en una sola cadena
public static string GetTimeDate()
{
string DateTime = System.DateTime.Now.ToString("dd-MM-yyyy HH:mm:ss");
return DateTime;
}
sample OUTPUT :-16-03-2015 07:45:15