如何从给定日期找到季度的开始日期和名称(1,2,3等)?从给定日期计算季度的开始日期和名称
32
A
回答
95
喜欢的东西(未经测试):
DateTime date;
int quarterNumber = (date.Month-1)/3+1;
DateTime firstDayOfQuarter = new DateTime(date.Year, (quarterNumber-1)*3+1,1);
DateTime lastDayOfQuarter = firstDayOfQuarter.AddMonths(3).AddDays(-1);
5
int GetQuarterName(DateTime myDate)
{
return (int)Math.Ceiling(myDate.Month/3.0);
}
DateTime GetQuarterStartingDate(DateTime myDate)
{
return new DateTime(myDate.Year,(3*GetQuarterName(myDate))-2,1);
}
GetQuarterName
获得当月的 “下一个” 整数值数/ 3
GetQuarterStartingDate
使用从GetQuarterName
输出摸出月份值,原始日期的年份部分,1代表要返回的月份的第一天。
(道歉做没有意义的,我有流感。:()
2
https://msdn.microsoft.com/ru-ru/library/ms127415(v=vs.110).aspx
using Microsoft.VisualBasic;
var quarter = DateAndTime.DatePart(DateInterval.Quarter, (DateTime)dateTimePickerDateTime.Value);
2
var date = new DateTime(2015, 3, 15);
var quarter = (date.Month + 2)/3;
var quarterStartMonth = 3 * quarter - 2;
var quarterStartDate = new DateTime(date.Year, quarterStartMonth, 1);
0
一个较为简单的内胆采用现场演示here +按F8 运行。
var date = DateTime.Now; //Give you own DateTime
int offset = 2, monthsInQtr = 3;
var quarter = (date.Month + offset)/monthsInQtr; //To find which quarter
var totalMonths = quarter * monthsInQtr;
var startDateInQtr = new DateTime(date.Year, totalMonths - offset, 1); //start date in quarter
如果您正在寻找在季度使用最后天DateTime.DaysInMonth
var endDateInQtr = new DateTime(date.Year, totalMonths, DateTime.DaysInMonth(date.Year, totalMonths));
相关问题
- 1. 计算本季度和上个季度的开始日期和结束日期
- 2. 按季度计算日期
- 3. 计算给定日期的日期
- 4. 开始日期计算给定结束日期和工作时间PL/SQL
- 5. 期间的计算开始日期
- 6. MDX计算量度 - 开始日期和结束日期之间的计数
- 7. MySQL获取季度的开始和结束日期按季度
- 8. 计算从开始日期到完成日期的时间
- 9. 从日期开始计算夏令时
- 10. 计算人年减去开始日期从结束日期
- 11. 从jquery开始日期计算结束日期
- 12. 显示给定的开始和结束日期,所有日期
- 13. 如何获取给定开始日期和结束日期的中间日期?
- 14. 获取给定开始日期和结束日期的日期列表
- 15. 计算从jquery的开始日期和持续时间的结束日期
- 16. 给定日期范围(开始日期和结束日期),如何计算日期,排除.Net中指定的每周日期?
- 17. 如何获取当前季度的开始日期和结束日期..?
- 18. 从特定日期开始倒计数
- 19. 计算开始日期的周数
- 20. 获取有关给定开始和结束日期的季度数据
- 21. 计算与给定日期不同的日期的XPath(XSLT)
- 22. 得到给定开始日期的结束日期基地
- 23. SAS给定一个开始日期和结束日期我需要知道在开始日期和结束日期之后的每个30天的日期
- 24. 从两个日期计算日期
- 25. 从某个开始日期开始计算工作天数
- 26. 如何计算unix中给定日期之前的日期?
- 27. 开始日期和结束日期datepicker
- 28. 如何有效计算连续日期给定的原始日期
- 29. 开始日期和结束日期之间的一个季度日期字符串
- 30. 计算到达日期给出的出发日期和时间
你能解释一下你的代码做什么? – roosteronacid 2009-09-29 12:06:14
@roosteronacid:'(quarterNumber-1)* 3 + 1'将给出给定季度的第一个月的月份编号。该代码为该年的该月的第一天创建一个“DateTime”。这是本季度的第一天。然后它增加了三个月。这将是* next *季度的第一天,所以通缉季度的最后一天将是前一天('.AddDays(-1)'这样做)。 – 2009-09-29 12:53:05
请参阅@il_guru answer here => http://stackoverflow.com/questions/11154673/get-the-correct-week-number-of-a-given-date – mynkow 2014-01-06 13:30:49