У Java є два класи для форматування дат: DateFormat і SimpleDateFormat.
Клас java.text.DateFormat надає різні методи для форматування та аналізу дати й часу в java незалежним від мови способом. Клас DateFormat є абстрактним класом. java.text. Format є батьківським класом, а java.text.SimpleDateFormat є підкласом класу java.text.DateFormat.
У Java перетворення дати в рядок називається форматуванням і, навпаки, аналізом. Іншими словами, форматування означає дату для рядка, і розбір означає рядок до дати .
Поля java.text.DateFormat
protected Calendar calendar protected NumberFormat numberFormat public static final int ERA_FIELD public static final int YEAR_FIELD public static final int MONTH_FIELD public static final int DATE_FIELD public static final int HOUR_OF_DAY1_FIELD public static final int HOUR_OF_DAY0_FIELD public static final int MINUTE_FIELD public static final int SECOND_FIELD public static final int MILLISECOND_FIELD public static final int DAY_OF_WEEK_FIELD public static final int DAY_OF_YEAR_FIELD public static final int DAY_OF_WEEK_IN_MONTH_FIELD public static final int WEEK_OF_YEAR_FIELD public static final int WEEK_OF_MONTH_FIELD public static final int AM_PM_FIELD public static final int HOUR1_FIELD public static final int HOUR0_FIELD public static final int TIMEZONE_FIELD public static final int FULL public static final int LONG public static final int MEDIUM public static final int SHORT public static final int DEFAULT
Методи java.text.DateFormat
Немає. | Громадський метод | опис |
---|---|---|
1) | кінцевий формат рядка (дата дата) | перетворює заданий об’єкт Date у рядок. |
2) | Аналіз дати (джерело рядка) викликає виключення ParseException | перетворює рядок в об'єкт Date. |
3) | static final DateFormat getTimeInstance() | повертає засіб форматування часу зі стилем форматування за замовчуванням для локалі за замовчуванням. |
4) | static final DateFormat getTimeInstance(стиль int) | повертає засіб форматування часу з указаним стилем форматування для мови за замовчуванням. |
5) | static final DateFormat getTimeInstance(int style, Locale locale) | повертає засіб форматування часу з заданим стилем форматування для заданої мови. |
6) | static final DateFormat getDateInstance() | повертає засіб форматування дати зі стилем форматування за замовчуванням для локалі за замовчуванням. |
7) | static final DateFormat getDateInstance(int style) | повертає засіб форматування дати з заданим стилем форматування для мови за замовчуванням. |
8) | static final DateFormat getDateInstance(int style, Locale locale) | повертає засіб форматування дати з заданим стилем форматування для заданої мови. |
9) | static final DateFormat getDateTimeInstance() | повертає засіб форматування дати/часу зі стилем форматування за замовчуванням для локалі за замовчуванням. |
10) | static final DateFormat getDateTimeInstance(int dateStyle,int timeStyle) | повертає засіб форматування дати/часу з указаним стилем форматування дати та стилем форматування часу для мови за замовчуванням. |
одинадцять) | static final DateFormat getDateTimeInstance(int dateStyle, int timeStyle, Locale locale) | повертає засіб форматування дати/часу з заданим стилем форматування дати та часу для заданої мови. |
12) | static final DateFormat getInstance() | повертає засіб форматування дати/часу з коротким стилем форматування дати та часу. |
13) | static Locale[] getAvailableLocales() | повертає масив доступних локалей. |
14) | Календар getCalendar() | повертає екземпляр Calendar для цього екземпляра DateFormat. |
п'ятнадцять) | NumberFormat getNumberFormat() | повертає екземпляр NumberFormat для цього екземпляра DateFormat. |
16) | Часовий пояс getTimeZone() | повертає екземпляр TimeZone для цього екземпляра DateFormat. |
Приклад Java DateFormat: дата в рядок
Давайте розглянемо простий приклад форматувати дату й час у Java за допомогою класу java.text.DateFormat.
Ім'я файлу: DateFormatExample.java
import java.text.DateFormat; import java.util.Date; public class DateFormatExample { public static void main(String[] args) { Date currentDate = new Date(); System.out.println('Current Date: '+currentDate); String dateToStr = DateFormat.getInstance().format(currentDate); System.out.println('Date Format using getInstance(): '+dateToStr); } }
Вихід:
Current Date: Tue Mar 31 14:37:23 IST 2015 Date Format using getInstance(): 31/3/15 2:37 PM
Давайте розглянемо повний приклад форматувати дату й час у Java за допомогою класу java.text.DateFormat.
Ім'я файлу: DateFormatExample2.java
import java.text.DateFormat; import java.util.Date; public class DateFormatExample2 { public static void main(String[] args) { Date currentDate = new Date(); System.out.println('Current Date: '+currentDate); String dateToStr = DateFormat.getInstance().format(currentDate); System.out.println('Date Format using getInstance(): '+dateToStr); dateToStr = DateFormat.getDateInstance().format(currentDate); System.out.println('Date Format using getDateInstance(): '+dateToStr); dateToStr = DateFormat.getTimeInstance().format(currentDate); System.out.println('Date Format using getTimeInstance(): '+dateToStr); dateToStr = DateFormat.getDateTimeInstance().format(currentDate); System.out.println('Date Format using getDateTimeInstance(): '+dateToStr); dateToStr = DateFormat.getTimeInstance(DateFormat.SHORT).format(currentDate); System.out.println('Date Format using getTimeInstance(DateFormat.SHORT): '+dateToStr); dateToStr = DateFormat.getTimeInstance(DateFormat.MEDIUM).format(currentDate); System.out.println('Date Format using getTimeInstance(DateFormat.MEDIUM): '+dateToStr); dateToStr = DateFormat.getTimeInstance(DateFormat.LONG).format(currentDate); System.out.println('Date Format using getTimeInstance(DateFormat.LONG): '+dateToStr); dateToStr = DateFormat.getDateTimeInstance(DateFormat.LONG,DateFormat.SHORT).format(currentDate); System.out.println('Date Format using getDateTimeInstance(DateFormat.LONG,DateFormat.SHORT): '+dateToStr); } }
Вихід:
Current Date: Tue Mar 31 14:37:23 IST 2015 Date Format using getInstance(): 31/3/15 2:37 PM Date Format using getDateInstance(): 31 Mar, 2015 Date Format using getTimeInstance(): 2:37:23 PM Date Format using getDateTimeInstance(): 31 Mar, 2015 2:37:23 PM Date Format using getTimeInstance(DateFormat.SHORT): 2:37 PM Date Format using getTimeInstance(DateFormat.MEDIUM): 2:37:23 PM Date Format using getTimeInstance(DateFormat.LONG): 2:37:23 PM IST Date Format using getDateTimeInstance(DateFormat.LONG,DateFormat.SHORT): 31 March, 2015 2:37 PM
Приклад Java DateFormat: рядок для дати
Давайте розглянемо простий приклад перетворити рядок на дату за допомогою класу java.text.DateFormat.
Ім'я файлу: DateFormatExample3.java
import java.text.DateFormat; import java.util.Date; public class DateFormatExample3 { public static void main(String[] args)throws Exception { Date d = DateFormat.getDateInstance().parse('31 Mar, 2015'); System.out.println('Date is: '+d); } }
Вихід:
Date is: Tue Mar 31 00:00:00 IST 2015
Приклад Java DateFormat: getTimeInstance(int style, Locale locale)
Давайте подивимося, як працює метод getTimeInstance(int style, Locale locale).
Ім'я файлу: GetTimeInstanceExample.java
// important important statements import java.util.Date; import java.util.Locale; import java.text.DateFormat; public class GetTimeInstanceExample { // main method public static void main(String argvs[]) throws Exception { // locale is French here. Locale lcl = Locale.FRENCH; // creating an object of the class Date Date d = new Date(); // getting the instance by invoking the getTimeInstance(int, Locale) method DateFormat dFormat = DateFormat.getTimeInstance(DateFormat.SHORT, lcl); String str = dFormat.format(d); System.out.println(str); } }
Вихід:
13:12
Приклад Java DateFormat: getDateInstance(int style)
Давайте подивимося, як працює метод getDateInstance(int style).
перетворення рядка в int у java
Ім'я файлу: GetDateInstanceExample.java
// important important statements import java.util.Date; import java.util.Locale; import java.text.DateFormat; public class GetDateInstanceExample { // main method public static void main(String argvs[]) throws Exception { // creating an object of the class Date Date d = new Date(); // getting the instance by invoking the getDateInstance(int) method // here default locale is used DateFormat dFormat = DateFormat.getDateInstance(DateFormat.SHORT); String str = dFormat.format(d); System.out.println(str); } }
Вихід:
12/2/21
Приклад Java DateFormat: getDateInstance(int style, Locale locale)
Давайте подивимося, як працює метод getDateInstance(int style, Locale locale).
Ім'я файлу: GetDateInstanceExample1.java
// important important statements import java.util.Date; import java.util.Locale; import java.text.DateFormat; public class GetDateInstanceExample1 { // main method public static void main(String argvs[]) throws Exception { // locale is French here. Locale lcl = Locale.FRENCH; // creating an object of the class Date Date d = new Date(); // getting the instance by invoking the getDateInstance(int, Locale) method DateFormat dFormat = DateFormat.getDateInstance(DateFormat.SHORT, lcl); String str = dFormat.format(d); System.out.println(str); } }
Вихід:
02/12/2021
Приклад Java DateFormat: getDateTimeInstance(int dateStyle, int timeStyle, Locale locale)
Давайте подивимося, як працює метод getDateTimeInstance(int dateStyle, int timeStyle, Locale locale).
Ім'я файлу: GetDateTimeInstanceExample.java
// important important statements import java.util.Date; import java.util.Locale; import java.text.DateFormat; public class GetDateTimeInstanceExample { // main method public static void main(String argvs[]) throws Exception { // locale is French here. Locale lcl = Locale.FRENCH; // creating an object of the class Date Date d = new Date(); // getting the instance by invoking the getDateTimeInstance(int, int, Locale) method DateFormat dFormat = DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.LONG, lcl); String str = dFormat.format(d); System.out.println(str); } }
Вихід:
02/12/2021 14:16:34 GMT
Приклад Java DateFormat: getCalender()
Давайте подивимося, як працює метод getCalender().
Ім'я файлу: GetCalenderExample.java
// important import statements import java.util.Date; import java.text.DateFormat; import java.text.*; public class GetCalenderExample { // main method public static void main(String argvs[]) throws Exception { // getting the instance DateFormat dFormat = DateFormat.getDateTimeInstance(); // invoking the method getCalender(); System.out.println(dFormat.getCalendar()); } }
Вихід:
java.util.GregorianCalendar[time = -886152493222, areFieldsSet = true, areAllFieldsSet = true, lenient = true, zone = sun.util.calendar.ZoneInfo[id = 'GMT', offset=0, dstSavings = 0, useDaylight = false, transitions = 0, lastRule = null], firstDayOfWeek = 1, minimalDaysInFirstWeek = 1,ERA = 1, YEAR = 1941, MONTH = 11, WEEK_OF_YEAR = 49, WEEK_OF_MONTH = 1, DAY_OF_MONTH = 2, DAY_OF_YEAR = 336, DAY_OF_WEEK = 3, DAY_OF_WEEK_IN_MONTH = 1, AM_PM = 1, HOUR = 2, HOUR_OF_DAY = 14, MINUTE = 31, SECOND = 46, MILLISECOND = 778, ZONE_OFFSET = 0, DST_OFFSET = 0]
Приклад Java DateFormat: getNumberFormat()
Давайте подивимося, як працює метод getNumberFormat().
Ім'я файлу: GetNumberFormatExample.java
// important import statements import java.text.NumberFormat; import java.text.DateFormat; public class DateFormatDemo { // main method public static void main(String[] argvs) { // getting the instance by invoking the getTimeInstance() method DateFormat dFormat = DateFormat.getTimeInstance(DateFormat.SHORT); // invoking the method getNumberFormat() NumberFormat numFormat = dFormat.getNumberFormat(); System.out.println('The format is: ' + numFormat); } }
Вихід:
The format is: java.text.DecimalFormat@674dc