Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / Как получить последний день предыдущего месяца в формате dd.mm.yyyy / 10 сообщений из 10, страница 1 из 1
21.03.2013, 12:00:27
    #38192845
May12
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить последний день предыдущего месяца в формате dd.mm.yyyy
Всем привет. Скажите правильно ли таким образом получать последний день предыдущего месяца:
Код: java
1.
2.
3.
4.
5.
6.
7.
/*использую java.util.Calendar*/
Calendar cal1 = Calendar.getInstance(TimeZone.getTimeZone("GMT+4"));
  		cal1.add(Calendar.MONTH, -1); // Устанавливаем месяц предшествующий текущему.  
  		Integer PrevMon = cal1.get(Calendar.MONTH)+1; // счет месяцов начинается с 0
  		Integer yearOfPrevMon = cal1.get(Calendar.YEAR);
  		Integer maxDayOfPrevMon = cal1.getActualMaximum(Calendar.DAY_OF_MONTH);
  		System.out.println("Последний день предыдущего месяца: " + maxDayOfPrevMon + "." + PrevMon + "." + yearOfPrevMon);



Подозреваю, что в начале следующего года могут возникнуть проблемы.
...
Рейтинг: 0 / 0
21.03.2013, 12:10:15
    #38192865
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить последний день предыдущего месяца в формате dd.mm.yyyy
SimpleDateFormat? Не не слышал.
...
Рейтинг: 0 / 0
21.03.2013, 12:22:09
    #38192899
May12
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить последний день предыдущего месяца в формате dd.mm.yyyy
Blazkowicz, слышала, только дело пока не в формате. Дело в дате.
Давайте совершим увлекательное путешествие в прошлое: предположим сегодня январь 2013.
Как получить последний день предыдущего месяца (31.12.2012)?
...
Рейтинг: 0 / 0
21.03.2013, 12:23:30
    #38192900
May12
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить последний день предыдущего месяца в формате dd.mm.yyyy
May12день
день в виде даты, хотела сказать.
...
Рейтинг: 0 / 0
21.03.2013, 12:34:24
    #38192926
May12
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить последний день предыдущего месяца в формате dd.mm.yyyy
Библиотека org.joda.time , вроде, то, что мне нужно.
Blazkowicz, спасибо.
...
Рейтинг: 0 / 0
21.03.2013, 12:41:08
    #38192947
leader
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить последний день предыдущего месяца в формате dd.mm.yyyy
Код: java
1.
2.
3.
4.
		Calendar cal1 = Calendar.getInstance(TimeZone.getTimeZone("GMT+4"));
		cal1.set(Calendar.DAY_OF_MONTH, 1);
		cal1.add(Calendar.DATE, -1);
		System.out.println(cal1.getTime());
...
Рейтинг: 0 / 0
22.03.2013, 14:26:09
    #38194904
chabapok
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить последний день предыдущего месяца в формате dd.mm.yyyy
May12> предположим сегодня январь 2013.

из текущего месяца вычесть 1,
если вышло меньше 0 то предыдущий месяц-декабрь, и год уменьшить на 1.

дальше смотрим сколько в этом месяце дней, и считаем последний день в месяце.
или можно даже не зная правила

псевдокод: while(needMonth<currentMonth){day=day-1;}

Ну тут еще кончно часы-минуты секунды надо поставить будет, но идея понятна.
...
Рейтинг: 0 / 0
22.03.2013, 14:42:14
    #38194944
chpasha
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить последний день предыдущего месяца в формате dd.mm.yyyy
chabapokиз текущего месяца вычесть 1,
если вышло меньше 0 то предыдущий месяц-декабрь, и год уменьшить на 1.

дальше смотрим сколько в этом месяце дней, и считаем последний день в месяце.
или можно даже не зная правила

псевдокод: while(needMonth<currentMonth){day=day-1;}

или посмотреть не предыдущий пост
...
Рейтинг: 0 / 0
22.03.2013, 22:06:32
    #38195589
May12
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить последний день предыдущего месяца в формате dd.mm.yyyy
Спасибо, в одном случае воспользовалась joda, в другом предложение Leader'a ( 14076699 )
...
Рейтинг: 0 / 0
23.03.2013, 15:39:30
    #38195928
Partisan M
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить последний день предыдущего месяца в формате dd.mm.yyyy
chabapokиз текущего месяца вычесть 1,
если вышло меньше 0 то предыдущий месяц-декабрь, и год уменьшить на 1.

дальше смотрим сколько в этом месяце дней, и считаем последний день в месяце.
или можно даже не зная правила

псевдокод: while(needMonth<currentMonth){day=day-1;}

Правильный ответ уже дан - использовать библиотеку Joda Time. Ни к чему плохо программировать то, что уже запрограммировано хорошо.
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Как получить последний день предыдущего месяца в формате dd.mm.yyyy / 10 сообщений из 10, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]