Analizar una fecha y hora de un documento xml con abreviaturas de zona horaria (por ejemplo, CET)

Raramente analizo archivos xml y cuando trato de usar las funciones integradas en Linq2Xml. Sin embargo, hoy me topé con un formato de fecha que no puedo transmitir a través de:

XElement element = ...
var date = (DateTime)element;

La fecha tiene el siguiente formato:

01/28/2009 02:31:54 CET

Ya intenté analizar la fecha usando TryParse en varias combinaciones, culturas, pero cualquiera que sea el formato que pruebe, el analizador de fecha y hora se queja del espacio en la posición 20. ¿Hay alguna manera de analizar esta fecha sin dividir la cadena o hacer cosas incómodas?

preguntado el 12 de junio de 12 a las 22:06

Si el espacio es el problema, ¿por qué no eliminarlo antes de analizar? -

1 Respuestas

Parece que las abreviaturas de zona horaria (por ejemplo, CET) no se reconocen. ¿Conoces el desplazamiento?

Esta persona tiene un problema relacionado: Analizar DateTime con la zona horaria de forma PST / CEST / UTC / etc

Un ejemplo de su publicación:

DateTime dt1 = DateTime.ParseExact("24-okt-08 21:09:06 CEST".Replace("CEST", "+2"), "dd-MMM-yy HH:mm:ss z", culture);

Obviamente, su formato de fecha y hora es un poco diferente, pero es una idea para ayudarlo.

Si puede, pídale a la persona que le proporciona el XML que genere la fecha/hora con el formato ISO 8601 para evitar el análisis personalizado.

contestado el 23 de mayo de 17 a las 11:05

+1 El sistema es una gran caja negra, no hay posibilidad de cambiar eso. Mantener un diccionario de todas las posibles abreviaturas de zonas horarias suena prometedor :-). - Andreas

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.