IsoFields 클래스를 참조하십시오.이 클래스는 주 기준 연도와 주 기준 요일을 쿼리 할 수 있습니다. 전용 포맷터 ISO_WEEK_DATE도 있습니다.
enum은 월요일에서 일요일까지 요일의 숫자를 알려주며, 1-7은 숫자입니다. LocalDate::getDayOfWeek
으로 전화 한 다음 DayOfWeek::getValue
으로 전화하십시오. 2016년 12월 7일
int weekOfWeekBasedYear = ld.get(IsoFields.WEEK_OF_WEEK_BASED_YEAR) ;
int yearOfWeekBasedYear = ld.get(IsoFields.WEEK_BASED_YEAR) ;
int dayOfWeek = ld.getDayOfWeek().getValue();
표준 ISO 8601 week date formats에 문자열을 구축하기 위해이 부분을 사용
LocalDate ld = LocalDate.now(ZoneId.of("America/Montreal")) ;
.
String yearWeek = yearOfWeekBasedYear + "-W" + String.format("%02d", weekOfWeekBasedYear) ;
2016-W49
String yearWeekDay = yearWeek + "-" + dayOfWeek ;
2016 W49-3
또는 사전 정의 된 DateTimeFormatter.ISO_WEEK_DATE
이 작업을 할 수 있습니다.
String ywd = ld.format(DateTimeFormatter.ISO_WEEK_DATE);
2016 W49-3 동일한 포맷은 표준 문자열을 파싱 할 수
.
String input = "2016-W49-3" ;
LocalDate ldParsed = LocalDate.parse(input , DateTimeFormatter.ISO_WEEK_DATE) ;
2016년 12월 7일
감사하지만 나는 대표에 대해 물어 된 날 - 중 - 주는'7'에서'2009 W53- 년 주의 7'. 모두 고려할 때, 이것은 하루의 날짜를 나타냅니다. –
요일은 단지'getDayOfWeek(). getValue()'입니다. – JodaStephen
[IdeOne.com의 라이브 코드] (http://ideone.com/7r0zeP)를 참조하십시오. –