一个星期有 7 天,我要通过一个日期值,得到这个日期 所在 整 周 的日期数据,
比如我有今天日期 “2009/11/20” ,那么就要得到 “星期日 2009/11/15 星期一 2009/11/16 .....星期六 2009/11/21”如此要怎么做?
比如我有今天日期 “2009/11/20” ,那么就要得到 “星期日 2009/11/15 星期一 2009/11/16 .....星期六 2009/11/21”如此要怎么做?
解决方案 »
- C# 线程中访问statusStrip控件的问题。
- datagridview 的更新
- 怎么把c#程序做成单可执行文件 包括dll 图片 音频等资源
- 有个想法,不知道,有没有可行性,高手来帮我看下
- sql处理并发访问机制的时候,是否是通过使用锁来实现的?
- 幫忙看看執行結果,三種情況,三個結果?暈~~高人指點迷津~~
- url(http:// , https:// , ftp:// 或内部网路径\\LEO)的正则表达式怎么写?
- 调试以后点了BUTTON却没有反映
- 安装C#,却不能创建WEB应用程序
- c# 窗体控件自动调节大小,同时字体随之变化.
- VS 2008 控制台输出表格问题
- 急,Winform中
oToday=new Date();
currentDay=oToday.getDay();
if(currentDay==0){currentDay=7}
mondayTime=oToday.getTime()-(currentDay-1)*24*60*60*1000;
sundayTime=oToday.getTime()+(7-currentDay)*24*60*60*1000;
alert("今天是"+oToday.getDate()+"号,星期"+currentDay+"\r");
alert("周一是"+new Date(mondayTime).getDate()+"号,周日是"+new Date(sundayTime).getDate()+"号")
alert("周一 "+new Date(mondayTime).toLocaleDateString()+"\n周末 "+new Date(sundayTime).toLocaleDateString()+" "+new Date(mondayTime).toLocaleTimeString())
</script>一个js脚本代码!!
思路:
如果是C#写法也是差不多的!先得到给定时间是星期几 相应的加减如果是刚好月底就得去计算闰年、月数、日期的加减!!
dt= dt.AddDays(1 -(int)dt.DayOfWeek); 获取日期所在周的周一的日期 结果为为2009-11-20所在周周一为 2009-11-16 剩下的就不用说了吧
static void Main(string[] args)
{
GetWeedays(DateTime.Parse("2009/11/20"));
} static void GetWeedays(DateTime dt)
{
DateTime begin = dt.AddDays(-(int)dt.DayOfWeek);
DateTime end = begin.AddDays(7);
for (dt = begin; dt < end; dt = dt.AddDays(1))
Console.WriteLine(dt.DayOfWeek + "," + dt.ToString("yyyy-MM-dd"));
}
string s = "";
for (int i = 0; i < 7; i++)
{
s += System.Globalization.CultureInfo.CurrentCulture.DateTimeFormat.GetDayName(dt.AddDays(i).DayOfWeek).ToString() +
":" + dt.AddDays(i).ToString("yyyy-mm-dd") + " \n";
}
Console.WriteLine(s);/*
------输出结果------------
星期一:2009-48-16
星期二:2009-48-17
星期三:2009-48-18
星期四:2009-48-19
星期五:2009-48-20
星期六:2009-48-21
星期日:2009-48-22*/
{
int year = DateTime.Today.Year;
int month = DateTime.Today.Month;
switch (period)
{
case Period.Year: //年
beginDate = new DateTime(year, 1, 1);
endDate = new DateTime(year, 12, 31);
break;
case Period.Month: //月
beginDate = new DateTime(year, month, 1);
endDate = beginDate.AddMonths(1).AddDays(-1);
break;
case Period.Week: //周
int week = (int)DateTime.Today.DayOfWeek;
if (week == 0) week = 7; //周日
beginDate = DateTime.Today.AddDays(-(week - 1));
endDate = beginDate.AddDays(6);
break;
default:
beginDate = DateTime.Today;
endDate = DateTime.Today;
break;
}
}