2009-01-07 12 views
25

En mi página web Asp.net que necesito para mostrar la fecha de hoy en uno de los cuadro de texto, por lo que en mi carga de forma que escribí el siguiente códigoCómo convertir la fecha en formato DD/MM/AA en C#

textbox1.text = System.DateTime.Today.ToShortDateString(); 

esta línea me da una fecha como 1/7/09, pero quiero una fecha como 01/07/09, ¿de todos modos puedo convertir esta fecha en formato mm/dd/aa en C#?

+2

Esta página es una gran referencia para el formato de cadenas en C#: http://blog.stevex.net/index.php/string-formatting-in-csharp/ –

Respuesta

55
DateTime.Today.ToString("MM/dd/yy") 

Consulte los documentos para custom date and time format strings para obtener más información.

(Ah, y espero que esta aplicación no esté destinada a otras culturas. Ese formato realmente podría confundir a mucha gente ... Nunca he entendido todo el asunto del mes/día/año, para ser sincero. Simplemente parece extraño ir a "medio/bajo/alto" en términos de escala como esa.)

+0

Estoy totalmente de acuerdo en lo extraño, aunque es más probable que mi La educación en el Reino Unido hace que dd/MM/ay sea más sensato para mí. – ZombieSheep

+2

Bueno, yy/MM/dd o dd/MM/aa tienen consistencia a su favor: suben o bajan de la escala de significancia. –

+0

yyyyMMdd cumple con el año 2000 y ordenará bien ... obtiene mi Voto. – AnthonyLambert

0

Analice el uso del método ToString() con un formato específico.

4

¿Ha intentado lo siguiente ?:

textbox1.text = System.DateTime.Today.ToString("MM/dd/yy"); 

Tenga en cuenta que 2 años dígito podría ser malo en el futuro ...

+0

Oh. todo nuestro software será reemplazado por ...;) –

+1

@Herbert jajaja sí, será ... será ... reemplazado por entonces. Lo que dijo ^^: D – BenAlabaster

+0

limpiar en el lado del servidor con una línea de código y sin javascript desordenado, agradable. – JoshYates1980

7

DateTime.Today.ToString ("MM/dd/yy ")

Mire los documentos para cadenas de formato de fecha y hora personalizadas para obtener más información.

(Ah, y espero que esta aplicación no esté destinada a otras culturas. Ese formato realmente podría confundir a mucha gente ... Nunca he entendido todo el asunto del mes/día/año, para ser sincero. Simplemente parece extraño ir a "medio/bajo/alto" en términos de escala así.)

Otras culturas realmente son un problema. Por ejemplo, ese código en portugues devuelve algo como 01-01-01 en lugar de 01/01/01. Asimismo, no undestand por qué ...

Para resolver ese problema que hago calle detrás de esta manera:

 IFormatProvider yyyymmddFormat = new System.Globalization.CultureInfo(String.Empty, false); 
     return date.ToString("MM/dd/yy", yyyymmddFormat); 
0

Sede, aquí se puede obtener sólo la fecha al pasar una cadena de formato. Usted puede obtener un formato de fecha diferente como por su exigencia se indican a continuación para la fecha actual:

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

Resultado: "09/01/2016"

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

Resultado: "9-1-2016"

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

Resultado: "09/01/2016"

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

Resultado: "01/09/2016 09:20:10"

Para más detalles echa un vistazo a MSDN reference for Custom Date and Time Format Strings

Cuestiones relacionadas