Få fram veckonumret på innevarande vecka
Hej,
Hur får jag fram veckonumret på innvarande vecka?
Jag sökte på PelleSoft och hittade:
1 2 3 4 5 6 7 8 9 10 11 | public static int GetWeekOfYear(DateTime date) { DateTime first, start; int year; year = date.Year + 1; do { first = new DateTime(year--, 1, 1); start = first.AddDays(3 - ((( int )first.DayOfWeek + 2) % 7)); } while (date < start); return (( int )date.Subtract(start).TotalDays) / 7 + 1; } |
Problemet är att jag behöver ha det i VB.NET...
Kan någon hjälpa mig please?
/Jocke
Svara
Sv: Få fram veckonumret på innevarande vecka
Enligt http://www.kamalpatel.net/ConvertCSharp2VB.aspx blir det:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | Public Shared Function GetWeekOfYear( ByVal date As DateTime) As Integer Dim first As DateTime,start As DateTime Dim year As Integer year = date.Year + 1 Do ... Loop While date < start Do first = New DateTime(year - 1 start = first.AddDays(3 - (( CType (first.DayOfWeek + 2, Integer )) % 7)) Loop While date < start Return ( CType (date.Subtract(start).TotalDays, Integer )) / 7 + 1 End Function |
/Johan
Svara
Sv:Få fram veckonumret på innevarande vecka
1 2 3 4 | Public Shared Function GetWeek( ByVal dt As DateTime) As Integer Dim d As DateTimeFormatInfo = New DateTimeFormatInfo Return d.Calendar.GetWeekOfYear(dt, CalendarWeekRule.FirstFourDayWeek, DayOfWeek.Monday) End Function |
public static int GetWeek(DateTime dt) { DateTimeFormatInfo d = new DateTimeFormatInfo(); return d.Calendar.GetWeekOfYear(dt, CalendarWeekRule.FirstFourDayWeek, DayOfWeek.Monday); }
Svara
Sv: Få fram veckonumret på innevarande vecka
Hej o tack för svaren.
Hur menar du att jag ska använda den funktionen, David?
/Jocke
Svara