ребята, я смущен, вызвав следующий метод: Calendar.getInstance().get(Calendar.WEEK_OF_YEAR)
, результат получил от этого метода не right.Here мой код:Как правильно выбрать номер недели в календаре?
Locale.setDefault(Locale.CHINA);
Calendar calendar = Calendar.getInstance();
//we think Monday is the first day of a week in China,but not Sunday.
calendar.setFirstDayOfWeek(Calendar.MONDAY);
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String dateString = "2010-01-01";
calendar.setTime(sdf.parse(dateString));
System.out.println("DateString: " + dateString + ", week: " + calendar.get(Calendar.WEEK_OF_YEAR));
dateString = "2010-12-27";
calendar.setTime(sdf.parse(dateString));
System.out.println("DateString: " + dateString + ", week: " + calendar.get(Calendar.WEEK_OF_YEAR));
В результате
DateString: 2010-01-01, week: 1//This may be wrong?
DateString: 2010-12-27, week: 1//This result is definitely wrong.
Так вот вопрос, как получить нужную неделю в году с использованием экземпляра календаря?
много благодаря @BalusC – George
To @BalusC, CST коротка для Центрального поясного времени, Китай поясного времени или Куба поясного времени. Чтобы использовать Китайское стандартное время (CST), нам также нужна информация о локали. – George
Рекомендуется использовать длинные имена часовых поясов. В этом случае «Азия/Шанхай» – eckes