Método DateTime.ParseExact

Recentemente me deparei com uma necessidade de converter uma data que estava representada em uma variável do tipo string (2018-09-13 10:45:20).

Minha primeira saida foi a seguinte:

string DataStr = '2018-09-13 10:45:20';
DateTime data = new DateTime(Convert.ToInt32(DataStr.Substring(0, 4)), Convert.ToInt32(DataStr.Substring(5, 2)), Convert.ToInt32(DataStr.Substring(8, 2)), Convert.ToInt32(DataStr.Substring(11, 2)), Convert.ToInt32(DataStr.Substring(14, 2)), Convert.ToInt32(DataStr.Substring(17, 2)));

Muito trampo né.... foi ai que pesquisei os métodos da classe DeteTime e encontrei o ParseExact. Show... faz exatamente o que precisava

string DataStr = '2018-09-13 10:45:20';
DateTime data = DateTime.ParseExact(DataStr, "yyyy-MM-dd HH:mm:ss", CultureInfo.InvariantCulture;

fica aqui registrado mais uma dica.

Artigos Relacionados