as400Esto es bastante b├ísico, pero a los usuarios m├ís noveles puede que le resulte complicado y precisamente llegu├ę a ello a ra├şz de la pregunta de un alumno hace pocoÔÇŽ

El caso es que los sistemas AS/400 suelen devolver los campos de fecha en un formato similar a este: 20110422, que es tal y como esta almacenado en la base de datos tipo texto. Es decir, el formato es YYYMMDD.

┬┐C├│mo las conviertes en fechas de pleno derecho en .NET?

Si es un campo de texto y siempre tiene este mismo formato exactamente (es decir, cuatro cifras para el a├▒o, 2 para el mes y 2 para el d├şa) es muy f├ícil convertirlo en una fecha usando el m├ętodo ParseExact de la clase DateTime:

DateTime.ParseExact("20110422", "yyyyMMdd", CultureInfo.InvariantCulture)

Simplemente le indicas la fecha, el formato como segundo par├ímetro (en este caso cuatro cifras para el a├▒o, dos para el mes (ojo, el mes es una M may├║scula, la min├║scula son minutos) y dos para el d├şa del mes) y listo.

Tambi├ęn podr├şas hacerlo analizando la cadena separ├índola en grupos de d├şgitos, pero no merece la pena complicarse la vida existiendo ParseExact en el propio framework.

Lo dicho: truco rápido y sencillo que seguro que a más de uno le resulta útil :-)

💪🏻 ┬┐Este post te ha ayudado?, ┬┐has aprendido algo nuevo?
Pues NO te pido que me invites a un caf├ę... Te pido algo m├ís f├ícil y mucho mejor

Escrito por un humano, no por una IA