2013-03-01 12 views
6

Próbuję uzyskać numer bieżącego tygodnia od podanej daty. tj Gdybym wprowadzić datę jako 01/03/2013 następnie powinien uzyskać numer tygodnia, który jest 9 ..Jak obliczyć numer tygodnia dla podanej daty Android

Proszę mi pomóc w znalezieniu rozwiązania ..

Dzięki ..

Abhishek.

+0

robić niektóre Google to musi. – Prateek

+0

@ pKs zrobił dużo google już .. ale nie jest w stanie znaleźć niczego, dlatego tutaj zamieściłem ... –

+0

http://stackoverflow.com/q/4013917/1503130 Nie wiem, gdzie to znalazłem. – Prateek

Odpowiedz

13

Możesz utworzyć obiekt kalendarza dla tej daty i dostać tydzień za pomocą kalendarza.get (Kalendarz. WEEK_OF_YEAR). API opisano tutaj: http://developer.android.com/reference/java/util/Calendar.html#WEEK_OF_YEAR

+0

ten kod daje mi całkowitą liczbę tygodni w danym roku. tj. w tym roku jest 52 tygodnie. Nie chcę tego. Chcę liczbę tygodni od początku roku, tj. Numer tygodnia do dzisiaj to 9 .. Chcę, żeby to nie był cały tydzień .. –

+0

Myślę, że robisz coś nie tak. Poniższy kod zwraca 9 w moim przypadku. Kalendarz kalendarza = Calendar.getInstance(); int week = calendar.get (Calendar.WEEK_OF_YEAR); – azertiti

3
Calendar sDateCalendar = new GregorianCalendar(2013,03,01); 
Calendar.getInstance().get(Calendar.WEEK_OF_YEAR); 
+0

Plase dostarcza kompletny kod ... Nie można znaleźć sDateYearAAAA, sDateMonthMM, sDateDayDD, iStartWeek i nie można uzyskać sDateCalendar.getWeekYear(); metoda .. –

+0

Czy chcesz tylko dla bieżącej daty lub dla dowolnego ciągu? –

7
Calendar calender = Calendar.getInstance(); 
    Log.d("Current Week:" + calender.get(Calendar.WEEK_OF_YEAR)); 
0

01/03/2013 przyjmuje się jako 113, 2, 1

  Date d = new Date(113, 2, 1); 

      Calendar c = Calendar.getInstance(); 

      c.setTime(d); 

      int weekOfYear = c.get(Calendar.WEEK_OF_YEAR); 
0

kalendarz = Calendar.getInstance(); Log.d ("Bieżący tydzień:" + calender.get (Calendar.WEEK_OF_YEAR));

Powiązane problemy