Как получить день недели из дня месяца в java (android)?

Я хочу получить день недели из дня месяца.

Например:

У меня дата: 2014-09-10 13:45:20

Я разбираю это и получаю день месяца, который равен 10.

Теперь я хотел бы знать, что 10. (десятый) день 9. месяца (сентябрь) в 2014 году, какой день недели?

Точно так же, как Calendar.getInstance().get(Calendar.DAY_OF_WEEK);, который возвращает 1 для понедельника, 2 для вторника, 3 для среды... и т.д.


person Adam Varhegyi    schedule 10.09.2014    source источник
comment
Запутанный вопрос. Вы пытаетесь печатать, например. Wednesday для заданной даты ввода? Или вам нужен метод, который принимает int year, int month, int day и возвращает строковое значение названия дня?   -  person Duncan Jones    schedule 10.09.2014
comment
Я просто хочу знать, какой день в заданной дате ввода.   -  person Adam Varhegyi    schedule 10.09.2014
comment
Это не адекватное описание. Пожалуйста, четко объясните, что вы вводите (включая тип) и каковы ожидаемые результаты.   -  person Duncan Jones    schedule 10.09.2014
comment
К вашему сведению, неприятные старые классы даты и времени, такие как java.util.Date , java.util.Calendar и java.text.SimpleDateFormat теперь являются устаревшими, вытесненными java.time, встроенные в Java 8 и более поздние версии. См. учебник от Oracle.   -  person Basil Bourque    schedule 20.04.2018


Ответы (1)


Просто вызовите calendar.setTime(date); для вашего экземпляра календаря и объекта Date, проанализированного из строки:

DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
final Date date = dateFormat.parse("2014-09-10 13:45:20");
System.out.println(date);

final Calendar calendar = Calendar.getInstance();
calendar.setTime(date);

System.out.println(calendar.get(Calendar.DAY_OF_WEEK));
System.out.println(calendar.get(Calendar.DAY_OF_WEEK) == Calendar.WEDNESDAY);

Отпечатки:

Wed Sep 10 13:45:20 MSK 2014
4
true
person Anton Kapralov    schedule 10.09.2014
comment
Он работает нормально, но, пожалуйста, уточните.... Как выполняется обработка? - person user5716019; 01.03.2016
comment
@user5716019 user5716019, простите, что вы хотите, чтобы я разъяснил? - person Anton Kapralov; 02.03.2016