Дата і час в java

Date currentDate = new Date ();
System.out.println ( "Date currentDate =" + currentDate);

Отримаємо (дата Java, час Java):

Форматування дати і часу в Java див. Нижче.

Як задати іншу, не поточну, дату в Java? Отримаємо вчорашню дату:

currentDate = new Date ();
Long time = currentDate.getTime ();
long anotherDate = -1;
time = time + (60 * 60 * 24 * 1000 * anotherDate);
currentDate = new Date (time);
System.out.println ( "Date currentDate =" + currentDate);

Результат (дата Java, час Java):

Отримати дату в Java за допомогою GregorianCalendar:

клас DateFormat

Форматуємо дату і час в Java за допомогою класу DateFormat. Це встановлене форматування для даної локалі.

Як створити російську локаль?

Locale local = new Locale ( "ru", "RU");

DateFormat df = DateFormat.getDateInstance (DateFormat.DEFAULT, local);
currentDate = new Date ();
System.out.println ( "currentDate =" + df.format (currentDate));

DateFormat df = DateFormat.getDateInstance (DateFormat.LONG. Local);
currentDate = new Date ();
System.out.println ( "currentDate =" + df.format (currentDate));

Форматуємо Час в Java за допомогою встановленого формату

DateFormat df = DateFormat.getTimeInstance (DateFormat.DEFAULT, local);
currentDate = new Date ();
System.out.println ( "currentTime =" + df.format (currentDate));

Форматуємо дату і час за допомогою встановленого формату:

DateFormat df = DateFormat.getDateTimeInstance (DateFormat.DEFAULT, DateFormat.DEFAULT, local);
currentDate = new Date ();
System.out.println ( "currentDateTime =" + df.format (currentDate));

клас SimpleDateFormat

Можна самому визначити порядок форматування за допомогою класу SimpleDateFormat.

Приклад (рік коротко):

SimpleDateFormat sdf = new SimpleDateFormat ( "dd.MM.yyг.");
currentDate = new Date ();
System.out.println ( "currentDate =" + sdf.format (currentDate));

Приклад (рік повний):

SimpleDateFormat sdf = new SimpleDateFormat ( "dd.MM.yyyyг.");
currentDate = new Date ();
System.out.println ( "currentDate =" + sdf.format (currentDate));

Приклад (місяць прописом):

SimpleDateFormat sdf = new SimpleDateFormat ( "d MMM yyyyг.");
currentDate = new Date ();
System.out.println ( "currentDate =" + sdf.format (currentDate));

Форматуємо дату і час:

SimpleDateFormat sdf = new SimpleDateFormat ( "dd.MM.yy HH: mm: ss");
currentDate = new Date ();
System.out.println ( "currentDate =" + sdf.format (currentDate));

currentDateTime = 02.05.09 20:21:39

Якщо в форматі годин поставити маленькі букви hh, тобто hh: mm: ss, то отримаємо:

currentDateTime = 02.05.09 8:24:24

тут 08 замість 20 годин.

клас DateFormatSymbols

Щоб назви місяців були в родовому відмінку використовуємо клас DateFormatSymbols:

клас MaskFormatter

Найважливіше, що потрібно знати про клас MaskFormatter, так це те, що форматує він тільки РЯДКИ. Якщо треба форматувати дату, від дати переходимо до рядка, а вже рядок форматіруем MaskFormatter-му. приклад:

то відсутні символи замінюються знаком підкреслення.

клас GregorianCalendar

Корисно знати клас GregorianCalendar при роботі з датами. Клас GregorianCalendar розширює клас Calendar в Java.

Встановити дату та час в об'єкт GregorianCalendar:

Відповідними методами get отримуємо елементи дати:

Додати / відняти до дати дні можна методом add:

Інша можливість змінювати дату - метод roll:

Перевіримо високосний чи рік методом isLeapYear:

Дата і час в java

Схожі статті