怎样得到两个日期之间间隔哪几个月份?所用到的程序语言为ASP.NET;如题,例如我想得到2013-6到2013-9之间的月份,6月、7月、8月和9月;该怎样写代码???求大神指教!
解决方案 »
- .net中怎么实现下载功能
- 怎样防止登录用户通过输入完整路径网址访问非授权页面?
- 怎么动态调整div 宽度
- sql 语句有错误
- 弹出指定大小的窗口,在线等!!!
- 有哪位做过工行的支付接口(asp.net的) 能给个完整的解决方案吗
- 如何给项目中一个页面编译一个单独的dll,并且在每次访问这个页面时都是调用这个单独编译的dll?急!
- 请问谁有在.net下能实现ubb的代码?
- 超级简单问题GridView
- 如何编写删除语句+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- 服务器端导出Excel文件,出现错误,检索 COM 类工厂中 CLSID 为的组件失败。求大神解决,遇见过这个实际错误的!!
- Could not contact SlickUpload request progress handler at "/up/SlickUpload.axd"
DateTime d1 = DateTime.Parse("2013-6");
DateTime d2 = DateTime.Parse("2013-9");
for (DateTime dt = d1; dt <= d2; dt = dt.AddMonths(1))
{
Console.WriteLine(dt.Month);//6、7、8、9
}
1>先求出两个时间中“年”的差距:int year = firDate.Year - lasDate.Year;
2>在求出月份的差:int month = firDate.Month - lasDate.Month;
3>总月份的差int total = year*12 + month;最后根据第一个日期,用for循环,就可以计算出间隔的月份了。
那那个d1有什么用啊?如果一定要少一个变量,你可以写 DateTime d1 = DateTime.Parse("2013-6-1");
DateTime d2 = DateTime.Parse("2013-9-12");
for (; d1 <= d2; d1 = d1.AddMonths(1))
{
Console.WriteLine(d1.Month);//6、7、8、9
}
实际上,最初的d1和dt的值意思是一样的,都是作为循环的初始值。