2011-12-05 31 views
1

如何將「1/2/2011(Sun)」的週數設置爲2010年的52?將「1/2/2011(Sun)」的週數設置爲2010年的52?

當我寫如下,它說周編號是「1」。

Dim dtTest As Integer = DatePart(DateInterval.WeekOfYear, CDate("2012/01/02"), _ 
           FirstDayOfWeek.Monday, FirstWeekOfYear.FirstFullWeek) 

爲什麼?我將FirstDayOfWeek設置爲星期一,因此「1/2/2011(Sun)」的星期數應該是52,對吧?

「1/2/2011(Sun)」只是一個例子。

我想要一般的方法:
1.星期幾的第一天是星期一。
2.每年的第一週是週一的第一個完整週。
3.一年的最後一週應該包含明年第一週之前的日期(例如2011年1月1日(星期六),1/2/2011(星期日))

thx。

回答

1

在你的示例代碼,你有在2012年,而不是2011年。2011年1月2日獲得52周與FirstDayOfWeek.MondayFirstWeekOfYear.FirstFullWeek

+0

哦,我多麼愚蠢是...反正感謝。 – yshrsmz

+1

它發生在我們所有人身上,無法看清明顯。我稱之爲'盲人程序員'。幾個星期前,我不得不輸入一個IP地址,最後一個字節是242。我輸入了232,甚至竟然重複輸入了兩次,並且輸入了232 ... – dbasnett

+1

最簡單的錯誤需要最長的時間修理。 – xpda