Câu trả lời của Mark Rotteveel là gần như ngay và một lần nữa một ví dụ mà loại tiềm năng nhầm lẫn có nằm trong lớp WeekFields
(các tên phương thức nghe tương tự, nhưng lệch khỏi cách sử dụng dân sự trực quan). Mã bản quyền đòi hỏi lĩnh vực khác:
LocalDate date = LocalDate.now();
TemporalField woy = WeekFields.of(Locale.getDefault()).weekOfWeekBasedYear();
int weekNumber = date.get(woy);
Xem thêm các cuộc tranh luận tương tự trên SO-post này, đặc biệt là các cuộc thảo luận và nhận xét về câu trả lời của @kleopatra.
Nguồn
2014-09-24 10:33:07
Cẩn thận về Locale.getDefault(). Ở một số nơi (ví dụ: Canada), nó có thể trở lại một tuần bắt đầu vào Chủ nhật. Sử dụng "Locale.ISO" trong tuần bắt đầu vào thứ Hai. –
Không có Locale.ISO, nhưng có 'WeekFields.ISO' –