是否可以从CurrentCulture
获取DateTimeFormatInfo
的工作日,但是将星期一返回为一周的第一天,而不是星期天。并且,如果当前的语言不是英语(即ISO代码不是“en”),则将其保留为默认设置。
默认情况下,CultureInfo.CurrentCulture.DateTimeFormat.DayNames
返回:
[0]: "Sunday"
[1]: "Monday"
[2]: "Tuesday"
[3]: "Wednesday"
[4]: "Thursday"
[5]: "Friday"
[6]: "Saturday"
但是我需要:
[0]: "Monday"
[1]: "Tuesday"
[2]: "Wednesday"
[3]: "Thursday"
[4]: "Friday"
[5]: "Saturday"
[6]: "Sunday"
最佳答案
您可以使用custom cultures在现有文化的基础上创建一种新文化。不过,老实说,我想这可能有点笨拙。 “最简单”的解决方案可能是这样的:
public string[] GetDayNames()
{
if (CultureInfo.CurrentCulture.Name.StartsWith("en-"))
{
return new [] { "Monday", "Tuesday", "Wednesday", "Thursday",
"Friday", "Saturday", "Sunday" };
}
else
{
return CultureInfo.CurrentCulture.DateTimeFormat.DayNames;
}
}
关于c# - 在.NET中获取当前的文化日名称,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2901220/