sortable now example datetimeformat c# datetime cultureinfo

c# - now - DateTime y CultureInfo



datetime short date format c# (3)

Tengo esto en mi código:

var date1 = DateTime.ParseExact(date, "dd.MM.yyyy HH:mm:ss", System.Globalization.CultureInfo.InvariantCulture);

Y cuando mi cultura actual es holandesa ( nl-NL ) en lugar del 1 de mayo, obtengo el 5 de enero.

Creo que el error está en el segundo parámetro dd.MM.yyyy HH:mm:ss .

¿Hay alguna manera de arreglar esto usando la clase CultureInfo ?


Puedes probar lo siguiente:

System.Globalization.CultureInfo cultureinfo = new System.Globalization.CultureInfo("nl-NL"); DateTime dt = DateTime.Parse(date, cultureinfo);


Usa la clase CultureInfo para cambiar la información de tu cultura.

var dutchCultureInfo = CultureInfo.CreateSpecificCulture("nl-NL"); var date1 = DateTime.ParseExact(date, "dd.MM.yyyy HH:mm:ss", dutchCultureInfo);


InvariantCulture es similar a en-US , así que usaría el CultureInfo correcto en su lugar:

var dutchCulture = CultureInfo.CreateSpecificCulture("nl-NL"); var date1 = DateTime.ParseExact(date, "dd.MM.yyyy HH:mm:ss", dutchCulture);

Demo

¿Y qué pasa cuando la cultura es en-nosotros? ¿Tendré que codificar para cada idioma que hay?

Si desea saber cómo mostrar la fecha en otra cultura como "en-us", puede usar date1.ToString(CultureInfo.CreateSpecificCulture("en-US")) .