DateTimeFormatter:
Той е въведен в Java 8, за да форматира стойността на датата. Използва се за форматиране ZoneDateTime, LocalDateTime, LocalDate, и Местно време. Обектът DateTimeFormatter може да бъде създаден чрез използване на вграден шаблон, персонализиран модел и локализиран стил. Някои приложения на този клас са показани в този урок с множество примери.
SimpleDateFormat:
Използва се за форматиране и синтактичен анализ на стойностите на датата с локална поддръжка. Датата в низ и преобразуването на низ в дата може да се направи лесно с помощта на този клас. Създава се чрез разширяване на Формат на датата клас. Някои приложения на този клас са показани в този урок с множество примери.
Пример-1: Форматиране на дата с помощта на DateTimeFormatter и вграден шаблон
Форматът за дата и час на DateTimeFormatter е фиксиран за вграденото модел. Датата и часът ще бъдат отпечатани въз основа на вграден модел, използван в кода. ISO_DATE pattern се използва в следния код, който отпечатва датата във формата, гггг-мм-дд. Текущата дата се чете тук с помощта на метода с име сега() от LocalDate клас, който връща форматираната стойност на датата в низа.
внос java.време.формат.DateTimeFormatter;внос java.време.LocalDate;
публичен клас дата2
публична статична void main (String [] args)
// Създаване на обект DateTimeFormatter
DateTimeFormatter format_object = DateTimeFormatter.ISO_DATE;
// Създаване на низ обект за четене на локалната дата
String DateObject = format_object.формат (LocalDate.сега());
// Печат на текущата дата
Система.навън.println ("Днес е" + DateObject);
Изход:
Следващото изображение показва изхода на горния код. Резултатът ще зависи от текущата системна дата.
Пример-2: Форматиране на дата с помощта на DateTimeFormatter и персонализиран шаблон
Можете да отпечатате стойността на датата в по-разбираем за човека формат, като използвате персонализирания шаблон на DateTimeFormatter. Шаблонът, използван в следващия пример, ще отпечата текущия делничен ден със стойността на датата. ofPattern () тук се използва метод за задаване на модела на стойността на датата. В модела "EEEE ' се използва за отпечатване на делничния ден в пълна форма, 'dd ' се използва за отпечатване на деня, 'ММММ'се използва за отпечатване на името на месеца в пълна форма и „гггг“ се използва за отпечатване на четирицифрената година. The сега() метод на LocalDateTime се използва тук за четене на текущата система и дата и час. The формат () метод се използва за връщане на форматираната стойност на датата в низ въз основа на модела.
внос java.време.формат.DateTimeFormatter;внос java.време.LocalDateTime;
публичен клас дата1
публична статична void main (String [] args)
// Създаване на обект за форматиране с помощта наPattern ()
DateTimeFormatter format_object = DateTimeFormatter.ofPattern ("EEEE, dd MMMM гггг.");
// Създаване на локален обект за дата и час
LocalDateTime dateTimeObj = LocalDateTime.сега();
// Вземете форматиран низ
Низ stringDate = format_object.формат (dateTimeObj);
// Отпечатайте форматираната дата
Система.навън.println ("Днес е" + stringDate);
Изход:
Следващото изображение показва изхода на горния код. Резултатът ще зависи от текущата системна дата.
Пример-3: Форматирайте датата с помощта на SimpleTimeFormat и метода format ()
Следващият пример показва използването на SimpleTimeFormat за отпечатване на форматираната стойност за дата и час въз основа на използвания шаблон. Тук „dd MMMM yyyy, EEEE, hh: mm a“ се използва като шаблон в кода. Значението на всяка част от шаблона без 'hh' и 'mm' е обяснено в предишния пример. 'хм се използва тук за отпечатване на текущата стойност на часа и 'mm'се използва за отпечатване на текущата минутна стойност. Дата class се използва в кода за четене на текущата системна дата и час. The формат () метод се използва за връщане на форматираните стойности за дата и час в низ въз основа на използвания модел.
внос java.текст.SimpleDateFormat;внос java.util.Дата;
публичен клас дата3
публична статична void main (String [] args)
// Задайте шаблона
Струнен модел = "dd MMMM гггг, EEEE, hh: mm a";
// Създаване на обект SimpleDateFormat
SimpleDateFormat simpleDateFormat = нов SimpleDateFormat (модел);
// Конвертиране на датата в стойността на низа
String dateVal = simpleDateFormat.формат (нова дата ());
// Разделяме стойността на датата въз основа на запетая (,)
Низ [] today_arr = dateVal.разделяне (",");
// Печат на форматирания изход
Система.навън.println ("Дата -" + днес_арр [0] + "\ nДен -" + днес_арр [1] +
"\ nВреме -" + днес_арр [2]);
Изход:
Следващото изображение показва изхода на горния код. Резултатът ще зависи от текущата дата и час на системата.
Пример-4: Форматиране на датата с помощта на SimpleTimeFormat и метод parse ()
Следващият пример показва използването на разбор () метод за четене на текущата дата или конкретна дата, която преобразува форматираната стойност на низа в стойност на датата. Ето, „Дд / мм / гггг“ шаблон се използва за задаване на конкретната дата за анализиране () метод. Текущата стойност на датата се чете от Дата клас и върна стойността като низ. Тази стойност отново се преобразува в стойност за дата с помощта на анализиране () метод. На следващо място, определена стойност за дата се задава като низ в метода parse () според модела. Стойността се преобразува в дата, както преди.
внос java.текст.SimpleDateFormat;внос java.util.Дата;
публичен клас дата4
публична статична void main (String [] args)
// Задайте шаблона
Шаблон на низа = "dd / MM / yyyy";
опитвам
// Създаване на обект SimpleDateFormat
SimpleDateFormat format_object = нов SimpleDateFormat (модел);
// Преобразуване на текущата дата в низова стойност
String dateVal = format_object.формат (нова дата ());
// Преобразуване на низа в дата стойност
Дата date1 = format_object.разбор (dateVal);
// Отпечатваме стойността на датата
Система.навън.println ("Текущата дата е" + date1);
// Преобразуване на дефинирания низ от дата в стойност на датата
Дата date2 = format_object.разбор ("16/12/2020");
// Отпечатваме стойността на датата
Система.навън.println ("Определената дата е" + date2);
улов (java.текст.ParseException д)
// Печат на съобщение за грешка
Система.грешка.println (напр.getMessage ());
Изход:
Следният изход ще се появи след стартиране на скрипта, а първият изход ще зависи от текущото системно време.
Заключение:
Различни начини за форматиране на стойността на датата са показани в този урок с помощта на различни Java класове. Урокът се фокусира основно върху форматирането на стойностите на датата. Можете да форматирате стойността на времето и от класовете, използвани тук. Надявам се, задачата за форматиране на дати в Java ще бъде по-лесна след прочитане на този урок.