Question

I can't figure out how to properly localize DateTime.DayOfWeek in .NET 2.0.

Example:

DateTime date = DateTime.Now;

// Works fine
string localizedDate = date.ToString("D", new CultureInfo("fr-FR"));

// Nope...
string localizedDay = date.DayOfWeek.ToString("D", new CultureInfo("fr-FR")); 

I'm restricted to .NET 2.0, is that the problem?

Était-ce utile?

La solution

DateTimeFormatInfo is supported since .NET 2.0, so this is not the case.

Try this instead:

DateTime.Now.ToString("dddd", new System.Globalization.CultureInfo("fr-FR"));

Autres conseils

Your second example:

string localizedDay = date.DayOfWeek.ToString("D", new CultureInfo("fr-FR"));

is using an Enumeration Format String, in which the "D" format specifier means "return the shortest representation possible".

You could try:

string localizedDay = new CultureInfo("fr-FR").DateTimeFormat.DayNames[(int)date.DayOfWeek];
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top