2011-05-23 34 views
7

actualmente estoy usando la siguiente línea:añadiendo comillas alrededor de la fecha y la hora, C#

w.Write(DateTime.Now.ToString("MM/dd/yyyy,HH:mm:ss")); 

y que da y salida como:

05/23/2011,14:24:54 

Lo que necesito es citas alrededor de la fecha y la hora , la salida debería tener este aspecto:

"05/23/2011","14:24:54" 

alguna idea sobre cómo "romper" fecha y hora, y obtener cotizaciones alrededor de cada pastel ce?

Respuesta

5

Trate String.Format:

w.Write(String.Format("\"{0:MM/dd/yyyy}\",\"{0:HH:mm:ss}\"", DateTime.Now)); 
+0

¡Eso es todo! ¡Gracias Señor! – FluxEngine

0

La siguiente versión, aunque obvio, no va a funcionar:

w.Write(DateTime.Now.ToString("\"MM/dd/yyyy\",\"HH:mm:ss\"")); 

Esta es la salida:

MM/dd/aaaa, HH: mm: ss

Así no hagas eso

+0

Esa fue mi primera conjetura también, pero parece que no funciona. – ashelvey

+0

Acabo de probarlo y la salida es; MM/dd/aaaa, HH: mm: ss – FluxEngine

+0

@ashelvey @ user630581 - He actualizado mi respuesta con esta información. –

4
DateTime.Now.ToString("\\\"MM/dd/yyyy\\\",\\\"HH:mm:ss\\\"") 
0
 string part1 = DateTime.Now.ToString("MM/dd/yyyy"); 
     string part2 = DateTime.Now.ToString("HH:mm:ss"); 
     Console.WriteLine("\""+part1+"\",\""+part2+"\""); 

funciona bien. No puede ser la mejor manera sin embargo

0

No estoy seguro sobre el tipo de w pero si es compatible con el conjunto estándar de sobrecargas Write lo siguiente debe funcionar.

w.Write(@"""{0}""", DateTime.Now.ToString(@"MM/dd/yyyy"",""HH:mm:ss"))); 

Si no, entonces usted puede hacer lo siguiente

var msg = String.Format(@"""{0}""", DateTime.Now.ToString(@"MM/dd/yyyy"",""HH:mm:ss")))); 
w.Write(msg); 
+0

Faltan las comillas alrededor de la coma, según el OP. –

+0

@Forgotten, gracias perdí esa parte de la Q. Actualizado – JaredPar

2

esto va a hacer el truco, también.

string format = @"{0:\""MM/dd/yyyy\"",\""HH:mm:ss\""}" ; 
    string s = string.Format(format,DateTime.Now) ; 

al igual que esta:

string format = @"{0:'\""'MM/dd/yyyy'\""','\""'HH:mm:ss'\""'}" ; 
string s = string.Format(format,DateTime.Now) ; 

y esto

string format = @"{0:""\""""MM/dd/yyyy""\"""",""\""""HH:mm:ss""\""""}" ; 
string s = string.Format(format,DateTime.Now) ; 

La introducción de una cita literal de matrimonio (") o apóstrofe (') en una fecha y hora o cadenas de formato numérico introduce texto literal La cita/apóstrofo literal incrustado debe estar equilibrado — actúan como un literal de cadena entrecomillado incrustado en la cadena de formato. Para obtener una comilla doble o un apóstrofo, debe ir precedida de una barra diagonal inversa.

John Sheehan's formatting cheatsheets nota de esta ... característica, pero en la medida en que puedo decir, la documentación de CLR es (y siempre ha sido) WRT incorrecta esto: los documentos en fecha/hora personalizadas y cadenas de formato numérico solo dicen que " [cualquier otro carácter] se copia a la cadena de resultados sin cambios. ".

Cuestiones relacionadas