/ / Convertir cadena a datetime [mié 01 de marzo de 2017 6:00 AM] este formato en c # - c #, excel, datetime

Convertir cadena a fecha y hora [mié. Mar 01, 2017 6:00 a.m.] este formato en c # - c #, excel, datetime

Tengo una hoja de Excel con columnas de fecha y hora, el formato de fecha es Wed Mar 01, 2017 este formato de tiempo es esto 6:00 AM Obtengo los vales de la hoja de Excel y combino estas dos columnas con un espacio entre el que lo hace Wed Mar 01, 2017 6:00 AM se parece a esto. Ahora quiero convertir esta cadena a datetime. He intentado muchas cosas, pero recibo el error de que la cadena no es un formato de fecha y hora válido.

string startDate = row.Cells[0].Value.ToString();
string startTime = row.Cells[1].Value.ToString();

var mydate = startDate+ " " + startTime; // it creates Wed Mar 01, 2017 6:00 AM, this is shown in debugger
DateTime finaldate = DateTime.ParseExact(mydate, "r", null);

Quiero que esto se convierta a datetime en el mismo formato porque tengo otra columna que me dice que las horas también se agregan en este tiempo y estoy usando addHours() Para hacer eso. Así que quiero la salida en el mismo formato después de agregar horas. No puedo hacer la cadena de formato de fecha para este formato para dar a ParseExact. Cualquier ayuda es apreciada. Gracias

Respuestas

1 para la respuesta № 1

Puede especificar un formato personalizado:

DateTime finaldate = DateTime.ParseExact(mydate, "ddd MMM dd, yyyy h:mm tt", CultureInfo.InvariantCulture);