有没有办法像:
string day = "Sunday";
int num = getDayOfWeek(day); //returns 0
我知道我们可以这样,我想反过来:
int num = 0;
//returns "Sunday"
return System.Globalization.CultureInfo.CurrentCulture.DateTimeFormat.DayNames[(int)num];
最简单的方法可能是实现一个能够满足我要求的字典,但我想知道C#
DateTime
函数中是否存在已经为我做过的事情。
编辑:
正如Jon Skeet指出的那样,理想的答案是支持不同的文化日(例如。" Sunday" in English," Segunda" in葡萄牙语...)
答案 0 :(得分:11)
var inx = Array.FindIndex(CultureInfo.CurrentCulture.DateTimeFormat.DayNames, x=>x=="Sunday");
答案 1 :(得分:3)
您可以执行以下操作:
string myDay = "Tuesday";
int dayNumber = ((int)Enum.Parse(typeof(DayOfWeek), myDay)); // dayNumber = 2
一周中的每一天都映射到以下数字:
- Sunday = 0
- Monday = 1
- Tuesday = 2
- Wednesday = 3
- Thursday = 4
- Friday = 5
- Saturday = 6