问题
I have converted several days of the week to their respective integer values..
For example: Tuesday, Thursday, Friday
As 2,4,5
Now I need to get back to the days from the integers.
Simply the inverse of what i had done.
Inverse of the Question: Get Integer value of day of week
Is there a simple standard way for getting day of week from integer value in C# or else I will have to perform a manual calculation with a Method?
回答1:
try below code :-
Response.Write(Enum.GetName(typeof(DayOfWeek),5));
Output:
Friday
and If you have to convert integers to days of week, see following sample to convert “2,4,5″ using LINQ.
var t = string.Join(",",
from g in "2,4,5".Split(new char[] { ',' })
select Enum.GetName(typeof(DayOfWeek), Convert.ToInt32(g)));
Response.Write(t);
Output:
Tuesday,Thursday,Friday
For extra informations :-
http://msdn.microsoft.com/en-us/library/system.enum.getname(v=vs.110).aspx
回答2:
Try
CultureInfo.CurrentCulture.DateTimeFormat.DayNames[day No]
回答3:
Enum.Parse(typeof(DayOfWeek),"0")
where "0" is string equivalent of integer value of day of the week
回答4:
Adding my answer in case it's any use to anyone:
((DayOfWeek)i).ToString();
Gives 0 = Sunday, 1 = Monday etc
For 0 = Monday just shift along 1
((DayOfWeek)((i + 1) % 7)).ToString();
回答5:
In DateTime.Now
DayOfWeek
is an enum value and you can get its string value by parsing it to corresponding values.
Enum.Parse(typeof(DayofWeek),"0")
You will get your desired result then.
回答6:
string.Format("{0:dddd}", value)
Using enumeration doesn't factor in localisation. This string format should return the full day name as a string localised to local culture.
来源:https://stackoverflow.com/questions/25419101/get-the-day-of-a-week-from-integer-value-of-the-day