Класс SimpleDateFormat
- Все реализуемые интерфейсы:
Serializable, Cloneable
public class SimpleDateFormat extends DateFormat
SimpleDateFormat — конкретный класс для форматирования и разбора дат с учетом локали. Он позволяет форматировать (дата → текст), разбирать (текст → дата) и нормализовать данные. SimpleDateFormat позволяет начать работу, выбрав любые пользовательские шаблоны форматирования даты и времени. Однако рекомендуется создавать форматировщик даты и времени с помощью getTimeInstance, getDateInstance или getDateTimeInstance в DateFormat. Каждый из этих методов класса может возвращать форматировщик даты и времени, инициализированный шаблоном формата по умолчанию. При необходимости шаблон формата можно изменить с помощью методов applyPattern. Дополнительные сведения об использовании этих методов см. в разделе DateFormat.
Шаблоны даты и времени
Форматы даты и времени задаются строками шаблонов даты и времени. В строках шаблонов даты и времени не заключенные в кавычки буквы от 'A' до 'Z' и от 'a' до 'z' интерпретируются как буквы шаблона, обозначающие компоненты строки даты или времени. Текст можно заключить в одинарные кавычки ('), чтобы избежать интерпретации. "''" обозначает одинарную кавычку. Все остальные символы не интерпретируются: при форматировании они просто копируются в выходную строку, а при разборе сопоставляются с входной строкой.
Определены следующие буквы шаблонов (все остальные символы от 'A' до 'Z' и от 'a' до 'z', не перечисленные в таблице ниже, зарезервированы). Методы applyPattern(String), applyLocalizedPattern(String) и SimpleDateFormat constructors выбрасывают IllegalArgumentException, если им передан шаблон, содержащий не заключенный в кавычки зарезервированный символ.
Буквы шаблонов обычно повторяются, поскольку их количество определяет точный формат представления:
Буква Компонент даты или времени Представление Примеры GОбозначение эры Текст ADyГод Год 1996;96YНеделя года Год 2009;09MМесяц года (зависит от контекста) Месяц July;Jul;07LМесяц года (самостоятельная форма) Месяц July;Jul;07wНеделя года Число 27WНеделя месяца Число 2DДень года Число 189dДень месяца Число 10FДень недели в месяце Число 2EНазвание дня недели Текст Tuesday;TueuНомер дня недели (1 = понедельник, ..., 7 = воскресенье) Число 1aОбозначение до/после полудня Текст PMHЧас дня (0–23) Число 0kЧас дня (1–24) Число 24KЧас до/после полудня (0–11) Число 0hЧас до/после полудня (1–12) Число 12mМинута часа Число 30sСекунда минуты Число 55SМиллисекунда Число 978zЧасовой пояс Общий часовой пояс Pacific Standard Time;PST;GMT-08:00ZЧасовой пояс Часовой пояс RFC 822 -0800XЧасовой пояс Часовой пояс ISO 8601 -08;-0800;-08:00
-
Текст: При форматировании, если количество букв шаблона равно 4 или больше, используется полная форма; в противном случае используется краткая или сокращенная форма, если она доступна. При разборе принимаются обе формы независимо от количества букв шаблона.
-
Число: При форматировании количество букв шаблона задает минимальное число цифр, а более короткие числа дополняются нулями до этого количества. При разборе количество букв шаблона игнорируется, если только оно не требуется для разделения двух соседних полей.
-
Год: Если
Calendarформатировщика — григорианский календарь, применяются следующие правила.
- При форматировании, если количество букв шаблона равно 2, год усекается до 2 цифр; в противном случае он интерпретируется как число.
- При разборе, если количество букв шаблона больше 2, год интерпретируется буквально независимо от числа цифр. Поэтому при использовании шаблона "MM/dd/yyyy" строка "01/11/12" разбирается как 11 января 12 года нашей эры.
- При разборе с сокращенным шаблоном года ("y" или "yy")
SimpleDateFormatдолжен интерпретировать сокращенный год относительно некоторого столетия. Для этого он корректирует даты так, чтобы они находились в пределах 80 лет до и 20 лет после момента создания экземпляраSimpleDateFormat. Например, если используется шаблон "MM/dd/yy" и экземплярSimpleDateFormatсоздан 1 января 1997 года, строка "01/11/12" будет интерпретирована как 11 января 2012 года, а строка "05/04/64" — как 4 мая 1964 года. При разборе в столетие по умолчанию преобразуются только строки, состоящие ровно из двух цифр, определяемых методомCharacter.isDigit(char). Любая другая числовая строка, например строка из одной цифры, строка из трех или более цифр либо строка из двух символов, не являющихся цифрами (например, "-1"), интерпретируется буквально. Поэтому строки "01/02/3" и "01/02/003" при использовании того же шаблона разбираются как 2 января 3 года нашей эры. Аналогично, "01/02/-3" разбирается как 2 января 4 года до нашей эры.
Если указано значение года недели'Y', а календарь не поддерживает годы недели, вместо него используется календарный год ('y'). Поддержку годов недели можно проверить вызовомgetCalendar().isWeekDateSupported().
-
Месяц: Если количество букв шаблона равно 3 или больше, месяц интерпретируется как текст; в противном случае — как число.
- Буква M формирует контекстно-зависимые названия месяцев, например встроенную форму названия. Буква M зависит от контекста в том смысле, что при использовании в отдельном шаблоне, например "MMMM", она задает самостоятельную форму названия месяца, а при использовании в шаблоне с другими полями, например "d MMMM", — форму названия месяца для форматирования. Например, по-каталански январь в форме для форматирования — "de gener", а в самостоятельной форме — "gener". В этом случае "MMMM" даст "gener", а часть месяца в "d MMMM" даст "de gener". Если
DateFormatSymbolsявно задан с помощью конструктораSimpleDateFormat(String,DateFormatSymbols)или методаsetDateFormatSymbols(DateFormatSymbols), используются названия месяцев, заданные вDateFormatSymbols. - Буква L формирует самостоятельную форму названий месяцев.
- Буква M формирует контекстно-зависимые названия месяцев, например встроенную форму названия. Буква M зависит от контекста в том смысле, что при использовании в отдельном шаблоне, например "MMMM", она задает самостоятельную форму названия месяца, а при использовании в шаблоне с другими полями, например "d MMMM", — форму названия месяца для форматирования. Например, по-каталански январь в форме для форматирования — "de gener", а в самостоятельной форме — "gener". В этом случае "MMMM" даст "gener", а часть месяца в "d MMMM" даст "de gener". Если
-
Общий часовой пояс: Часовые пояса интерпретируются как текст, если у них есть названия. Для часовых поясов, обозначающих смещение относительно GMT, используется следующий синтаксис:
GMTOffsetTimeZone:Часы должны находиться в диапазоне от 0 до 23, а минуты — от 00 до 59. Формат не зависит от локали, цифры должны быть взяты из блока Basic Latin стандарта Unicode.GMTSign Hours:Minutes Sign: one of+ -Hours: Digit Digit Digit Minutes: Digit Digit Digit: one of0 1 2 3 4 5 6 7 8 9При разборе также принимаются часовые пояса RFC 822.
-
Часовой пояс RFC 822: При форматировании используется формат часового пояса RFC 822 из 4 цифр:
RFC822TimeZone: Sign TwoDigitHours Minutes TwoDigitHours: Digit DigitДвухзначное число часов должно находиться в диапазоне от 00 до 23. Остальные определения соответствуют общим часовым поясам.При разборе также принимаются общие часовые пояса.
-
Часовой пояс ISO 8601: Количество букв шаблона определяет формат как для форматирования, так и для разбора следующим образом:
ISO8601TimeZone: OneLetterISO8601TimeZone TwoLetterISO8601TimeZone ThreeLetterISO8601TimeZone OneLetterISO8601TimeZone: Sign TwoDigitHoursОстальные определения соответствуют общим часовым поясам или часовым поясам RFC 822.ZTwoLetterISO8601TimeZone: Sign TwoDigitHours MinutesZThreeLetterISO8601TimeZone: Sign TwoDigitHours:MinutesZПри форматировании, если значение смещения относительно GMT равно 0, формируется
"Z". Если количество букв шаблона равно 1, дробная часть часа игнорируется. Например, если шаблон —"X", а часовой пояс —"GMT+05:30", формируется"+05".При разборе
"Z"разбирается как обозначение часового пояса UTC. Общие часовые пояса не принимаются.Если количество букв шаблона равно 4 или больше, при создании
SimpleDateFormatили применении шаблона выбрасываетсяIllegalArgumentException.
SimpleDateFormat также поддерживает строки локализованных шаблонов даты и времени. В этих строках описанные выше буквы шаблонов могут заменяться другими буквами шаблонов, зависящими от локали. SimpleDateFormat не выполняет локализацию текста, отличного от букв шаблонов; это задача клиента класса. Примеры
В следующих примерах показана интерпретация шаблонов даты и времени в локали США. Указанные дата и время — 2001-07-04 12:08:56 по местному времени в часовом поясе тихоокеанского времени США.
Шаблон даты и времени Результат "yyyy.MM.dd G 'at' HH:mm:ss z"2001.07.04 AD at 12:08:56 PDT"EEE, MMM d, ''yy"Wed, Jul 4, '01"h:mm a"12:08 PM"hh 'o''clock' a, zzzz"12 o'clock PM, Pacific Daylight Time"K:mm a, z"0:08 PM, PDT"yyyyy.MMMMM.dd GGG hh:mm aaa"02001.July.04 AD 12:08 PM"EEE, d MMM yyyy HH:mm:ss Z"Wed, 4 Jul 2001 12:08:56 -0700"yyMMddHHmmssZ"010704120856-0700"yyyy-MM-dd'T'HH:mm:ss.SSSZ"2001-07-04T12:08:56.235-0700"yyyy-MM-dd'T'HH:mm:ss.SSSXXX"2001-07-04T12:08:56.235-07:00"YYYY-'W'ww-u"2001-W27-3
Синхронизация
Форматировщики дат не синхронизированы. Рекомендуется создавать отдельные экземпляры форматировщика для каждого потока. Если несколько потоков одновременно обращаются к форматировщику, его необходимо синхронизировать извне.
- Примечание к API:
- Рассмотрите возможность использования
DateTimeFormatterв качестве неизменяемой и потокобезопасной альтернативы. - Начиная с:
- 1.1
- См. также:
Краткое описание вложенных классов
Вложенные классы/интерфейсы, объявленные в классе DateFormat
DateFormat.Field | Модификатор и тип | Класс | Описание |
|---|---|---|
static class |
DateFormat.Field |
Определяет константы, используемые в качестве ключей атрибутов в AttributedCharacterIterator, возвращаемом DateFormat.formatToCharacterIterator, и в качестве идентификаторов полей в FieldPosition. |
Краткое описание полей
Поля, объявленные в классе DateFormat
AM_PM_FIELD, calendar, DATE_FIELD, DAY_OF_WEEK_FIELD, DAY_OF_WEEK_IN_MONTH_FIELD, DAY_OF_YEAR_FIELD, DEFAULT, ERA_FIELD, FULL, HOUR_OF_DAY0_FIELD, HOUR_OF_DAY1_FIELD, HOUR0_FIELD, HOUR1_FIELD, LONG, MEDIUM, MILLISECOND_FIELD, MINUTE_FIELD, MONTH_FIELD, numberFormat, SECOND_FIELD, SHORT, TIMEZONE_FIELD, WEEK_OF_MONTH_FIELD, WEEK_OF_YEAR_FIELD, YEAR_FIELD | Модификатор и тип | Поле | Описание |
|---|---|---|
static final int |
AM_PM_FIELD |
Полезная константа для выравнивания поля AM_PM. |
protected Calendar |
calendar |
Экземпляр Calendar, используемый для вычисления полей даты и времени, а также момента времени. |
static final int |
DATE_FIELD |
Полезная константа для выравнивания поля DATE. |
static final int |
DAY_OF_WEEK_FIELD |
Полезная константа для выравнивания поля DAY_OF_WEEK. |
static final int |
DAY_OF_WEEK_IN_MONTH_FIELD |
Полезная константа для выравнивания поля DAY_OF_WEEK_IN_MONTH. |
static final int |
DAY_OF_YEAR_FIELD |
Полезная константа для выравнивания поля DAY_OF_YEAR. |
static final int |
DEFAULT |
Константа для шаблона стиля по умолчанию. |
static final int |
ERA_FIELD |
Полезная константа для выравнивания поля ERA. |
static final int |
FULL |
Константа для шаблона полного стиля. |
static final int |
HOUR_OF_DAY0_FIELD |
Полезная константа для выравнивания поля HOUR_OF_DAY с отсчётом от нуля. |
static final int |
HOUR_OF_DAY1_FIELD |
Полезная константа для выравнивания поля HOUR_OF_DAY с отсчётом от единицы. |
static final int |
HOUR0_FIELD |
Полезная константа для выравнивания поля HOUR с отсчётом от нуля. |
static final int |
HOUR1_FIELD |
Полезная константа для выравнивания поля HOUR с отсчётом от единицы. |
static final int |
LONG |
Константа для шаблона длинного стиля. |
static final int |
MEDIUM |
Константа для шаблона среднего стиля. |
static final int |
MILLISECOND_FIELD |
Полезная константа для выравнивания поля MILLISECOND. |
static final int |
MINUTE_FIELD |
Полезная константа для выравнивания поля MINUTE. |
static final int |
MONTH_FIELD |
Полезная константа для выравнивания поля MONTH. |
protected NumberFormat |
numberFormat |
Форматтер чисел, который DateFormat использует для форматирования чисел в датах и времени. |
static final int |
SECOND_FIELD |
Полезная константа для выравнивания поля SECOND. |
static final int |
SHORT |
Константа для шаблона короткого стиля. |
static final int |
TIMEZONE_FIELD |
Полезная константа для выравнивания поля TIMEZONE. |
static final int |
WEEK_OF_MONTH_FIELD |
Полезная константа для выравнивания поля WEEK_OF_MONTH. |
static final int |
WEEK_OF_YEAR_FIELD |
Полезная константа для выравнивания поля WEEK_OF_YEAR. |
static final int |
YEAR_FIELD |
Полезная константа для выравнивания поля YEAR. |
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
SimpleDateFormat() |
Создаёт SimpleDateFormat с использованием шаблона и символов формата даты по умолчанию для локали FORMAT по умолчанию. |
SimpleDateFormat |
Создаёт SimpleDateFormat с использованием заданного шаблона и символов формата даты по умолчанию для локали FORMAT по умолчанию. |
SimpleDateFormat |
Создаёт SimpleDateFormat с использованием заданного шаблона и символов формата даты. |
SimpleDateFormat |
Создаёт SimpleDateFormat с использованием заданного шаблона и символов формата даты по умолчанию для указанной локали. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
void |
applyLocalizedPattern |
Применяет к этому формату даты заданную локализованную строку шаблона. |
void |
applyPattern |
Применяет к этому формату даты заданную строку шаблона. |
Object |
clone() |
Создаёт копию этого SimpleDateFormat. |
boolean |
equals |
Сравнивает указанный объект с этим SimpleDateFormat на равенство. |
StringBuffer |
format |
Форматирует заданный Date в строку даты и времени и добавляет результат в заданный StringBuffer. |
AttributedCharacterIterator |
formatToCharacterIterator |
Форматирует объект, создавая AttributedCharacterIterator. |
Date |
get2DigitYearStart() |
Возвращает начальную дату 100-летнего периода, к которому относятся годы, заданные двумя цифрами. |
DateFormatSymbols |
getDateFormatSymbols() |
Возвращает копию символов формата даты и времени этого формата даты. |
int |
hashCode() |
Возвращает значение хеш-кода для этого SimpleDateFormat. |
Date |
parse |
Разбирает текст строки для получения Date. |
void |
set2DigitYearStart |
Задаёт начало 100-летнего периода, к которому будут относиться годы, заданные двумя цифрами, указав дату. |
void |
setDateFormatSymbols |
Задаёт символы формата даты и времени для этого формата даты. |
String |
toLocalizedPattern() |
Возвращает локализованную строку шаблона, описывающую этот формат даты. |
String |
toPattern() |
Возвращает строку шаблона, описывающую этот формат даты. |
String |
toString() |
Возвращает строку, идентифицирующую этот SimpleDateFormat, для отладки. |
Методы, объявленные в классе DateFormat
format, format, getAvailableLocales, getCalendar, getDateInstance, getDateInstance, getDateInstance, getDateTimeInstance, getDateTimeInstance, getDateTimeInstance, getInstance, getNumberFormat, getTimeInstance, getTimeInstance, getTimeInstance, getTimeZone, isLenient, parse, parseObject, setCalendar, setLenient, setNumberFormat, setTimeZone | Модификатор и тип | Метод | Описание |
|---|---|---|
final StringBuffer |
format |
Форматирует заданный Object в строку даты и времени. |
final String |
format |
Форматирует Date в строку даты и времени. |
static Locale[] |
getAvailableLocales() |
Возвращает массив всех локалей, для которых методы get*Instance этого класса могут возвращать локализованные экземпляры. |
Calendar |
getCalendar() |
Возвращает календарь, связанный с этим форматтером даты и времени. |
static final DateFormat |
getDateInstance() |
Возвращает форматтер даты со стилем форматирования по умолчанию для локали FORMAT по умолчанию. |
static final DateFormat |
getDateInstance |
Возвращает форматтер даты с заданным стилем форматирования для локали FORMAT по умолчанию. |
static final DateFormat |
getDateInstance |
Возвращает форматтер даты с заданным стилем форматирования для указанной локали. |
static final DateFormat |
getDateTimeInstance() |
Возвращает форматтер даты и времени со стилем форматирования по умолчанию для локали FORMAT по умолчанию. |
static final DateFormat |
getDateTimeInstance |
Возвращает форматтер даты и времени с заданными стилями форматирования даты и времени для локали FORMAT по умолчанию. |
static final DateFormat |
getDateTimeInstance |
Возвращает форматтер даты и времени с заданными стилями форматирования для указанной локали. |
static final DateFormat |
getInstance() |
Возвращает форматтер даты и времени по умолчанию, использующий стиль SHORT как для даты, так и для времени. |
NumberFormat |
getNumberFormat() |
Возвращает форматтер чисел, используемый этим форматтером даты и времени для форматирования и разбора времени. |
static final DateFormat |
getTimeInstance() |
Возвращает форматтер времени со стилем форматирования по умолчанию для локали FORMAT по умолчанию. |
static final DateFormat |
getTimeInstance |
Возвращает форматтер времени с заданным стилем форматирования для локали FORMAT по умолчанию. |
static final DateFormat |
getTimeInstance |
Возвращает форматтер времени с заданным стилем форматирования для указанной локали. |
TimeZone |
getTimeZone() |
Возвращает часовой пояс. |
boolean |
isLenient() |
Определяет, должен ли разбор даты и времени выполняться с допусками. |
Date |
parse |
Разбирает текст от начала заданной строки для получения даты. |
Object |
parseObject |
Разбирает текст строки для получения Date. |
void |
setCalendar |
Задаёт календарь, который будет использоваться этим форматом даты. |
void |
setLenient |
Указывает, должен ли разбор даты и времени выполняться с допусками. |
void |
setNumberFormat |
Позволяет задать форматтер чисел. |
void |
setTimeZone |
Задаёт часовой пояс для календаря этого объекта DateFormat. |
Методы, объявленные в классе Format
format, parseObject | Модификатор и тип | Метод | Описание |
|---|---|---|
final String |
format |
Форматирует объект, создавая строку. |
Object |
parseObject |
Разбирает текст от начала заданной строки для получения объекта. |
Методы, объявленные в классе Object
finalize, getClass, notify, notifyAll, wait, wait, wait | Модификатор и тип | Метод | Описание |
|---|---|---|
protected void |
finalize() |
Устарело, будет удалено: этот элемент API может быть удалён в будущей версии. Финализация устарела и может быть удалена в одном из будущих выпусков. |
final Class |
getClass() |
Возвращает класс времени выполнения этого Object. |
final void |
notify() |
Пробуждает один поток, ожидающий на мониторе этого объекта. |
final void |
notifyAll() |
Пробуждает все потоки, ожидающие на мониторе этого объекта. |
final void |
wait() |
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или interrupt. |
final void |
wait |
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или interrupt, либо истечения заданного промежутка реального времени. |
final void |
wait |
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или interrupt, либо истечения заданного промежутка реального времени. |
Подробное описание конструкторов
SimpleDateFormat
public SimpleDateFormat()
SimpleDateFormat, используя шаблон по умолчанию и символы формата даты для локали FORMAT по умолчанию. Примечание: Этот конструктор может поддерживать не все локали. Для полной поддержки используйте фабричные методы класса DateFormat.SimpleDateFormat
public SimpleDateFormat(String pattern)
SimpleDateFormat, используя заданный шаблон и символы формата даты по умолчанию для локали FORMAT по умолчанию. Примечание: Этот конструктор может поддерживать не все локали. Для полной поддержки используйте фабричные методы класса DateFormat. Эквивалентно вызову SimpleDateFormat(pattern, Locale.getDefault(Locale.Category.FORMAT)).
- Параметры:
-
pattern— шаблон, описывающий формат даты и времени - Исключения:
-
NullPointerException— если заданный шаблон равен null -
IllegalArgumentException— если заданный шаблон недопустим - См. также:
SimpleDateFormat
public SimpleDateFormat(String pattern, Locale locale)
SimpleDateFormat, используя заданный шаблон и символы формата даты по умолчанию для заданной локали. Примечание: Этот конструктор может поддерживать не все локали. Для полной поддержки используйте фабричные методы класса DateFormat.- Параметры:
-
pattern— шаблон, описывающий формат даты и времени -
locale— локаль, символы формата даты которой следует использовать - Исключения:
-
NullPointerException— если заданный шаблон или локаль равны null -
IllegalArgumentException— если заданный шаблон недопустим
SimpleDateFormat
public SimpleDateFormat(String pattern, DateFormatSymbols formatSymbols)
SimpleDateFormat, используя заданный шаблон и символы формата даты.- Параметры:
-
pattern— шаблон, описывающий формат даты и времени -
formatSymbols— символы формата даты, которые следует использовать для форматирования - Исключения:
-
NullPointerException— если заданный шаблон или formatSymbols равны null -
IllegalArgumentException— если заданный шаблон недопустим
Подробное описание методов
set2DigitYearStart
public void set2DigitYearStart(Date startDate)
- Параметры:
-
startDate— при разборе двузначные годы будут помещены в диапазон отstartDateдоstartDate + 100 years. - Исключения:
-
NullPointerException— еслиstartDateравноnull. - Начиная с:
- 1.2
- См. также:
get2DigitYearStart
public Date get2DigitYearStart()
- Возвращает:
- начало 100-летнего периода, в который попадают двузначные годы при разборе
- Начиная с:
- 1.2
- См. также:
format
public StringBuffer format(Date date, StringBuffer toAppendTo, FieldPosition pos)
Date в строку даты и времени и добавляет результат в заданный StringBuffer.- Определено в:
-
formatв классеDateFormat - Параметры:
-
date— значение даты и времени, которое необходимо преобразовать в строку даты и времени. -
toAppendTo— место, куда будет добавлен новый текст даты и времени. -
pos— отслеживает позицию поля в возвращаемой строке. Например, если текст даты и времени имеет вид"1996.07.10 AD at 15:08:56 PDT", а заданныйfieldPosition—DateFormat.YEAR_FIELD, начальный и конечный индексыfieldPositionбудут установлены соответственно в 0 и 4. Обратите внимание: если одно и то же поле даты и времени встречается в шаблоне несколько раз,fieldPositionбудет установлено для первого вхождения этого поля даты и времени. Например, при форматированииDateв строку даты и времени"1 PM PDT (Pacific Daylight Time)"с использованием шаблона"h a z (zzzz)"и поля выравниванияDateFormat.TIMEZONE_FIELDначальный и конечный индексыfieldPositionдля первого вхождения символа шаблона часового пояса'z'будут установлены соответственно в 5 и 8. - Возвращает:
- отформатированную строку даты и времени.
- Исключения:
-
NullPointerException— если любой из параметров равенnull.
formatToCharacterIterator
public AttributedCharacterIterator formatToCharacterIterator(Object obj)
AttributedCharacterIterator. Возвращаемый AttributedCharacterIterator можно использовать для формирования результирующей строки, а также для получения информации о ней. Ключ каждого атрибута AttributedCharacterIterator будет иметь тип DateFormat.Field, а соответствующее значение атрибута будет совпадать с его ключом.
- Переопределяет:
-
formatToCharacterIteratorв классеFormat - Параметры:
-
obj— объект для форматирования - Возвращает:
- AttributedCharacterIterator, описывающий отформатированное значение.
- Исключения:
-
NullPointerException— если obj равен null. -
IllegalArgumentException— если Format не может отформатировать заданный объект или строка шаблона Format недопустима. - Начиная с:
- 1.4
parse
public Date parse(String text, ParsePosition pos)
Date. Метод пытается разобрать текст, начиная с индекса, заданного в pos. Если разбор выполнен успешно, индекс pos обновляется до индекса после последнего использованного символа (при разборе необязательно используются все символы до конца строки), а разобранная дата возвращается. Обновленный pos можно использовать как начальную позицию для следующего вызова этого метода. Если возникает ошибка, индекс pos не изменяется, индекс ошибки pos устанавливается в позицию символа, на котором произошла ошибка, а метод возвращает null.
При этой операции разбора для получения Date используется calendar. Все поля даты и времени
calendar очищаются перед разбором, а для отсутствующих данных о дате и времени используются значения полей даты и времени по умолчанию из calendar. Например, если в ходе разбора не задан год, значением года разобранного Date будет 1970 при использовании GregorianCalendar. Значение
TimeZone может быть переопределено в зависимости от заданного шаблона и значения часового пояса в text. Значение
TimeZone, ранее заданное вызовом setTimeZone, возможно, потребуется восстановить для дальнейших операций.
- Определено в:
-
parseв классеDateFormat - Параметры:
-
text—String, часть которого необходимо разобрать. -
pos— объектParsePositionс информацией об индексе и индексе ошибки, как описано выше. - Возвращает:
- Разобранное из строки значение
Date. В случае ошибки возвращает null. - Исключения:
-
NullPointerException— еслиtextилиposравен null.
toPattern
public String toPattern()
- Возвращает:
- строку шаблона, описывающую этот формат даты.
toLocalizedPattern
public String toLocalizedPattern()
- Возвращает:
- локализованную строку шаблона, описывающую этот формат даты.
applyPattern
public void applyPattern(String pattern)
- Параметры:
-
pattern— новый шаблон даты и времени для этого формата даты - Исключения:
-
NullPointerException— если заданный шаблон равен null -
IllegalArgumentException— если заданный шаблон недопустим
applyLocalizedPattern
public void applyLocalizedPattern(String pattern)
- Параметры:
-
pattern— строка, которую следует преобразовать в новый шаблон формата даты и времени для этого формата - Исключения:
-
NullPointerException— если заданный шаблон равен null -
IllegalArgumentException— если заданный шаблон недопустим
getDateFormatSymbols
public DateFormatSymbols getDateFormatSymbols()
- Возвращает:
- символы формата даты и времени для этого формата даты
- См. также:
setDateFormatSymbols
public void setDateFormatSymbols(DateFormatSymbols newFormatSymbols)
- Параметры:
-
newFormatSymbols— новые символы формата даты и времени - Исключения:
-
NullPointerException— если заданный newFormatSymbols равен null - См. также:
clone
public Object clone()
SimpleDateFormat. При этом также клонируются символы формата даты.- Переопределяет:
-
cloneв классеDateFormat - Возвращает:
- клон этого
SimpleDateFormat - См. также:
hashCode
public int hashCode()
SimpleDateFormat.- Переопределяет:
-
hashCodeв классеDateFormat - Требования к реализации:
- Этот метод вычисляет хеш-код, используя значение, возвращаемое методом
toPattern(). - Возвращает:
- хеш-код этого
SimpleDateFormat - См. также:
toString
equals
public boolean equals(Object obj)
SimpleDateFormat на равенство. Возвращает true, если объект также является SimpleDateFormat и оба формата будут одинаково форматировать любое значение.- Переопределяет:
-
equalsв классеDateFormat - Требования к реализации:
- Этот метод проверяет равенство, определяя идентичность класса на основе
getClass(), а неinstanceof. Поэтому в методах equals подклассов экземпляр этого класса не должен считаться равным экземпляру подкласса. - Параметры:
-
obj— объект для сравнения на равенство - Возвращает:
-
true, если указанный объект равен этомуSimpleDateFormat - См. также:
© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.