#java #дата #calendar
Перерыл кучи документации и понял, что для работы с датой лучше всего использовать Calendar. Но возник такой вопрос: возможно ли в JAVA задать нужную дату напрямую без лишних преобразований, что-то по типу myDate.set("28.12.2016"); ну или через запятую? Подскажите, в какую сторону копать либо киньте примеры (именно на установку даты и ее извлечение). P.S. Пишу консольное приложение, ввод даты осуществляется пользователем вручную.
Ответы
Ответ 1
Как я понимаю, нужный тебе метод тут Calendar calendar = Calendar.getInstance(); calendar.set(2016, 6, 10); Для отображения даты используйте SimpleDateFormat Например: SimpleDateFormat dayFormat = new SimpleDateFormat("EEE, d MMMM", Locale.getDefault()); String myString = dayFormat.format(calendar.getTime()); Задавайте нужный паттерн для вывода даты, в примере выше результат будет "Вс, 12 июня" А при вводе от пользователя ничто Вам не мешает минусить на единицу введеный месяц. Комментарий от @zRrr: SimpleDateFormat умеет разбирать строки с датами, примерно так: Date date = new SimpleDateFormat( "dd.MM.yyyy" ).parse( "28.12.2016" ); и так лучше разбирать пользовательский ввод, если формат даты в строке известен.Ответ 2
Calendar c = Calendar.getInstance(); c.set(year, month, day); //вводим дату SimpleDateFormat format1 = new SimpleDateFormat("MMMM dd yyyy", Locale.ENGLISH); String formatted = format1.format(c.getTime());
Комментариев нет:
Отправить комментарий