좋아, 그럼 내가하려는 것은 캘린더 인스턴스의 날짜를 설정 한 다음 week_of_year를 반환하는 것입니다.캘린더 날짜 설정
String[] arrDate = dateIn.split("/");
int lMonth = Integer.parseInt(arrDate[0]) - 1;
Log.d("SaveHandler", "Month is: " + lMonth);
int lDay = Integer.parseInt(arrDate[1]);
Log.d("SaveHandler", "Day is: " + lDay);
int lYear = Integer.parseInt(arrDate[2]);
Log.d("SaveHandler", "Year is: " + lYear);
: 나는 lYear, lMonth 및 lDay 값을 얻으려면
public String weekInYearForm = "ww";
SimpleDateFormat formWIM = new SimpleDateFormat(weekInYearForm, Locale.US);
Calendar lc = Calendar.getInstance();
lc.set(Calendar.YEAR, lYear);
lc.set(Calendar.MONTH, lMonth);
lc.set(Calendar.DAY_OF_MONTH, lDay);
wiy = formWIM.format(lc.get(Calendar.WEEK_OF_YEAR));
능의는 Calendar.set()를 사용하여 그렇게하고, 나는 다음과 같은 단계에 형식 04/26/2013
에 문자열을 전달하고있다
내가 직면 한 문제는 wiy로 출력되는 것을 볼 때 항상 1이라는 것입니다. 추가 디버깅을 수행 할 때, 시간이 제 시간에 남겨져 있고 필요한 값으로 설정되지 않았다는 것을 깨달았습니다. .
lc.set(lYear, lMonth, lDay)
도 사용해 보았습니다. 누구든지 아이디어가 있다면, 나는 그들을 크게 감사 할 것입니다.
* 편집 : 이전에 디버깅을 해봤지만 올해 1970 년과 0 월을 반환합니다.
'Calendar'의'Calendar.MONTH' 필드는 0이 아니라 우리가 익숙했던 것처럼 0입니다. 어쩌면 문제가있을 수 있습니다. –
아니요, 저는 그것에 대해 생각해 보았고 설정하기 전에 1을 빼기로했습니다. – ubundude
Java 클래스를 사용하거나 Joda Time과 같은 타사 라이브러리를 사용해야 만 이러한 모든 문제가 이미 해결 되었습니까? –