从 Day 的整数值中获取星期几
本文关键字:取星期几 整数 Day | 更新日期: 2023-09-27 18:18:59
我已经将一周中的几天转换为它们各自的整数值。
例如:Tuesday, Thursday, Friday
As 2,4,5
现在我需要从整数回到日子。
只是我所做的事情的相反。
问题的反面:获取星期几的整数值
是否有一种简单的标准方法可以从 C# 中的整数值获取星期几,否则我将不得不使用 Method 执行手动计算?
尝试以下代码:-
Response.Write(Enum.GetName(typeof(DayOfWeek),5));
输出:
Friday
如果必须将整数转换为星期几,请参阅以下示例以使用 LINQ 转换"2,4,5"。
var t = string.Join(",",
from g in "2,4,5".Split(new char[] { ',' })
select Enum.GetName(typeof(DayOfWeek), Convert.ToInt32(g)));
Response.Write(t);
输出:
Tuesday,Thursday,Friday
如需更多信息:-
http://msdn.microsoft.com/en-us/library/system.enum.getname(v=vs.110(.aspx
试试
CultureInfo.CurrentCulture.DateTimeFormat.DayNames[day No]
添加
我的答案,以防对任何人有用:
((DayOfWeek)i).ToString();
给出 0 = 星期日,1 = 星期一等
对于 0 = 星期一,只需沿 1 移动
((DayOfWeek)((i + 1) % 7)).ToString();
Enum.Parse(typeof(DayOfWeek),"0")
其中"0"是相当于星期几的整数值的字符串
> In DateTime.Now
DayOfWeek
是一个枚举值,您可以通过将其解析为相应的值来获取其字符串值。
Enum.Parse(typeof(DayofWeek),"0")
然后你会得到你想要的结果。
string.Format("{0:dddd}", value)
使用枚举不会考虑本地化。此字符串格式应将全天名称作为本地化为本地区域性的字符串返回。
class Program
{
static void Main(string[] args)
{
var value = DateTime.Today;
System.Console.WriteLine(string.Format("{0:dddd}", value));
}
}
2020 年 3 月 11 日的控制台输出,区域设置 en-GB:
Wednesday