就像它說的那樣,我只需要在C#中的兩個日期之間計算星期(即7天跨度,而不是日曆周)的最有效方式。最有效的方法來計算兩個日期時間之間的星期數
回答
獲取天鴻溝的數量由7
int weeks = (date1 - date2).TotalDays/7;
你可能有一個長達6天,將不包括在週數剩餘部分。
謝謝。你不會相信這個網上有多少垃圾回答,而且我有一個大腦放屁的一天,不能提出任何事情。 – McAzzaMan 2011-05-05 06:12:31
當您想知道周測量的其他「類型」時,此答案不起作用 - 因此需要日曆周,而不是任意的跨度。例如,假設你有一個頻率標準,即「每個日曆周」一次。如果它是在星期六完成的,那麼在星期天你就想看到「1」的結果,因爲現在這是一個新的日曆周。爲了得到一個零,你必須在同一個日曆週中比較兩個日期。這個答案會給出「0」,並繼續給零直到下個星期六。請參閱OP評論中的'V4Vendetta'評論。 – DAG 2014-11-24 14:22:32
@DAG - 你看過這個問題嗎?這不是它要求的。 – Oded 2014-11-24 14:28:28
我假設你想在Calender的基礎上得到這個。爲此,您需要根據您的需要System.Globalization
DateTime date1 = DateTime.Now;
DateTimeFormatInfo dinfo = DateTimeFormatInfo.CurrentInfo;
dinfo.Calendar.GetWeekOfYear(date1, CalendarWeekRule.FirstFullWeek, DayOfWeek.Monday)
你必須設置日曆周規則和一週的第一天。
這給你一個日曆的日曆編號。你可以得到相同的你的其他日期,不同的是你的周計數
希望這可以幫助你。
這在跨越不同年份的兩個日期的非常常見的情況下失敗。不是所有的年份都是52周,所以你的答案沒有立即明顯的修復。 – DAG 2014-11-24 14:25:34
嘗試使用此方法獲得的天數:
TimeSpan ts = date1.Subtract(date2);
int dateDiff = ts.Days();
然後,像@Oded說,除以7
int totalWeeks = (int) dateDiff/7;
乾杯!
- 1. 如何計算兩個日期之間有多少星期日?
- 2. 你如何計算兩個日期之間的星期數?
- 3. 最快的算法來計算兩個日期之間的營業日數?
- 4. 計算兩個日期之間的特定星期幾
- 5. 方法來計算兩個日期之間的時間差,在藥劑
- 6. 計算兩個日期時間字符串之間的時間
- 7. 計算兩個日期時間之間的時間
- 8. 日期間的計算在兩個日期之間
- 9. 在db2中計算兩個日期之間的星期日的數量
- 10. 計算兩個日期之間每天的「開放時間」數
- 11. 計算兩個日期/時間列之間的「分鐘數」
- 12. PHP計算兩個日期之間的辦公時間數
- 13. 計算兩個日期之間不包括星期日的天數
- 14. 如何使用mysql計算兩個日期之間的星期日數
- 15. 計算不同行兩個日期之間的時間間隔
- 16. VB.NET - 計算排除日期之間的兩個日期之間的天數
- 17. MySQL的算兩個日期之間的星期在一個表
- 18. 計算兩個日期之間的日間時間和夜間時間
- 19. 找到兩個日期之間的星期日數,如果星期日來自兩個日期之間,然後減去星期日
- 20. 計算日期之間的時間差
- 21. 計算在pyspark的兩個日期之間的時間
- 22. 獲取兩個日期之間的最大日期/時間
- 23. 計算兩個連續日期之間的最大天數
- 24. 計算每天兩個日期之間的時間
- 25. 如何計算兩個日期之間的時間差 - MySql
- 26. ActionScript 3.0 +計算兩個日期之間的時間跨度?
- 27. 計算兩個日期之間傳遞的時間量
- 28. 計算MySQL中兩個日期時間之間的差異
- 29. 如何計算兩個日期之間的總工作時間
- 30. 計算兩個日期之間的工作時間
你的意思是像Calender那樣的幾周? – V4Vendetta 2011-05-05 06:11:56
還有什麼其他類型的周?有多少人與C#或日期有關? – McAzzaMan 2011-05-05 06:29:32
我的意思是兩種方法,即任何7天的時間可以是一週,而另一種情況下它跟隨在特定日期範圍內有幾周的日曆。由於你在處理日期,所以與日曆周的檢查更相關。 – V4Vendetta 2011-05-05 06:37:10