Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java: Общие вопросы > Дата-Время


Автор: 0x00 27.8.2010, 12:41
Как получить текущую дату в понятном для человека виде?)
Как от даты отнять/прибавить время (час, два, сутки, месяц)?

Автор: Prof_2000 27.8.2010, 12:57
Вопрос скорее относится к общим вопросам по Java и достаточно освещен на просторах Интернета.

Для вывода даты - используйте класс DateFormat.
http://www.askdev.ru/question/119/java-util-Date-%D1%81%D0%BE%D0%B7%D0%B4%D0%B0%D1%82%D1%8C-%D0%BE%D0%B1%D1%8A%D0%B5%D0%BA%D1%82-%D0%B4%D0%B0%D1%82%D1%8B-1-%D0%BD%D0%B5%D0%B4%D0%B5%D0%BB%D1%8F-7%D0%B4%D0%BD%D0%B5%D0%B9-%D0%BD%D0%B0%D0%B7%D0%B0%D0%B4/

Автор: 0x00 27.8.2010, 13:09
я не задавал бы вопрос тут не посмотрев в интренете.
Как получить дату разобрался, а вот как производить с ней операции (прибавить час, отнять сутки) этот вопрос еще актуален.
Если кто сталкивался, прошу помощи.

Автор: Samotnik 27.8.2010, 13:23
Цитата(0x00 @  27.8.2010,  12:41 Найти цитируемый пост)
Как получить текущую дату в понятном для человека виде?)


Код

import java.util.Calendar;
import java.text.SimpleDateFormat;

public class DateView {
  public static final String DATE_FORMAT = "yyyy-MM-dd";

  public static String getCurrentDate() {
    Calendar cal = Calendar.getInstance();
    SimpleDateFormat sdf = new SimpleDateFormat(DATE_FORMAT);
    return sdf.format(cal.getTime());

  }

  public static void  main(String arg[]) {
    System.out.println(DateView.getCurrentDate());
  }
}



Получаешь ты дату в любом случае в миллисекундах, а вот формат вывода ты можешь корректировать как угодно yyyy-MM-dd или yyyy-MM или yyyy-MM-dd HH:mm:ss и т.д.

Автор: Prof_2000 27.8.2010, 13:26
Ну а насчёт операций с датой - по ссылке в комментарии выше 2 примера кода вычитания недели из даты. Остальное аналогично.

Здесь перепишу пример для добавления к дате трёх суток.

Код


    Calendar c = new GregorianCalendar();
    c.setTimeInMillis(System.сurrentTimeMillis()); // поскольку задача стоит - "сегодня", уточним ее до "текущий момент"
    c.add(Calendar.DAY_OF_YEAR, 3);  // Здесь добавляем трое суток по грегорианскому календарю
    java.util.Date date = c.getTime(); // получаем объект типа java.util.Date


Автор: LSD 27.8.2010, 14:14
Цитата(0x00 @  27.8.2010,  14:09 Найти цитируемый пост)
я не задавал бы вопрос тут не посмотрев в интренете.

Т.е. http://base.vingrad.ru/view/2805-Rabota-s-datami это не часть интернетов?

Автор: intr 27.8.2010, 15:26
Цитата(0x00 @ 27.8.2010,  17:41)
Как получить текущую дату в понятном для человека виде?)
Как от даты отнять/прибавить время (час, два, сутки, месяц)?

http://joda-time.sourceforge.net/

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)