Поделиться через


SimpleDateFormat Класс

Определение

SimpleDateFormat — это конкретный класс для форматирования и анализа дат с учетом языкового стандарта.

[Android.Runtime.Register("java/text/SimpleDateFormat", DoNotGenerateAcw=true)]
public class SimpleDateFormat : Java.Text.DateFormat
[<Android.Runtime.Register("java/text/SimpleDateFormat", DoNotGenerateAcw=true)>]
type SimpleDateFormat = class
    inherit DateFormat
Наследование
SimpleDateFormat
Атрибуты

Комментарии

SimpleDateFormat — это конкретный класс для форматирования и анализа дат с учетом языкового стандарта. Он позволяет отформатировать (текст даты→), синтаксический анализ (дата → текста) и нормализацию.

SimpleDateFormat позволяет начать с выбора любых определяемых пользователем шаблонов для форматирования даты и времени. Однако рекомендуется создать форматировщик даты и времени с getTimeInstanceпомощью , getDateInstanceлибо getDateTimeInstance в DateFormat. Каждый из этих методов класса может возвращать метод форматирования даты и времени, инициализируемый с помощью шаблона формата по умолчанию. Вы можете изменить шаблон формата с помощью applyPattern методов по мере необходимости. Дополнительные сведения об использовании этих методов см. в разделе DateFormat.

<h2>Шаблоны< даты и времени/h2>

Форматы даты и времени задаются строками <>даты и времени< em>. В строках шаблонов даты и времени неквалированные буквы из 'A''Z' и из 'a' них 'z' интерпретируются как буквы шаблона, представляющие компоненты строки даты или времени. Текст можно кавычек использовать одинарные кавычки ('), чтобы избежать интерпретации. "''" представляет одну кавычку. Все остальные символы не интерпретируются; Они просто копируются в выходную строку во время форматирования или сопоставляются с входной строкой во время синтаксического анализа.

Определены следующие буквы шаблонов (все остальные символы из и из 'A''Z''z''a' них зарезервированы): <класс таблицы blockquote<>="striped"<>caption style="display:none">Chart отображает шаблоны букв, компонент даты и времени, презентацию и примеры.</caption><thead><tr<>th scope="col" style="text-align:left">Letter <th scope="col" style="text-align:left"Date or Time Component <th scope=">col" style="text-align:left"text-align:left"> Presentation <th scope="col" style="text-align:left">Examples <th scope="col" style="text-align:left">Supported (API Levels) </thead><tbody><tr<>th scope="row"G><td Era><конструктор td>Text<td td tdAD><>1+</td><tr th><scope="row"<>ytd>Year td><Year <td td; 96>1996<td>1+</td tr th><scope="row"<>Ytd<>Week year td td>>Year <<td;<09>2009td 24+/td tr th<>scope="row"<>Mtd><Month in year (context sensitive)>< td>Month<tdJuly>; ;<07Jul<>td>1+</td tr<>th scope="row"<>Ltd<>Month in year (автономная форма)>< td>Month<tdJuly>; ; Jul07<td>TBD</td><tr th><scope="row"><wtd>Week in year>< td Number<27><>td 1+</><td tr<>th scope="row">><Wtd Week in month <>td Number td 1+</td><tr<>th scope="row"D<>>td Day in year>< td Number><<2<>td>189<td 1+/td tr th<>scope="row"<>dtd><>Day in month <><>10<>td number td 1+</><td tr<>th scope="row"><F>td Day of week in month>< td Number><>2<td 1+</td<>tr><th scope="row"E<>td>Day name in week <>td Text Text<><td>Tuesday; Tue<td>1+</td tr th scope="row"<u>td>Day number of week (1 = понедельник, ..., 7 = воскресенье)>< td<>Number<td><>124+</td><tr<>th scope="row"<a>>td Am/pm token>< td textPM<<>>td 1+</td><tr<><>th scope="row"td"H><td>Час в день (0-23) td Number<td>td td>>0<1+</td<>tr<>th scope="row"k><td>Hour in day (1-24) td Number<><24>td 1+/><td tr<>th scope="row"><Ktd>Hour in am/pm (0-11)>0<<>><>< td number td 1+<</td><tr<>th scope= <"row"><htd Hour in am/pm (1-12) <td Number<td><12>>>1+</<>td tr><th scope="row"m>><td Minute in hour>< td Number td 1+/td tr th<>scope="row"<>s>td<>Second in minuted <<><>>55Number<>><30td 1+<</td><tr><th scope="row">S<td>Millisecond <td>Number<978><>td 1+</td<>tr<>th scope="row"z><td>Time zone <td>General time zone<tdPacific Standard Time>; ; PSTGMT-08:00<td>1+</td tr th scope="row"Z<>td<>Часовой пояс td <>>RFC 822<-0800><часовой пояс td>1+</td<>tr>><<th scope="row"><Xtd Часовой <пояс td>ISO 8601<часовой пояс td; -08:00-0800<>>-08td>24+</td<>/tbody></table<>/blockquote> Pattern letters обычно повторяются, так как их число определяет точную презентацию: <ul<>li><strong>"text<:>/strong> For formatting, если число шаблонов букв равно 4 или более, используется полная форма; в противном случае используется короткая или сокращенная форма, если она доступна. Для синтаксического анализа оба вида принимаются независимо от количества букв шаблона.</li><strong><>"number">Number:</strong> For formatting, число букв шаблонов — минимальное количество цифр, а более короткие числа — нулевые. Для синтаксического анализа количество букв шаблонов игнорируется, если только не требуется разделять два смежных поля.</li li><><strong>"year:>/strong>,< если форматировщик #getCalendar() Calendar является григорианским календарем, применяются следующие правила. <ul><li>Для форматирования, если число букв шаблона равно 2, год усечен до 2 цифр; в противном случае он интерпретируется как число. <li>Для синтаксического анализа, если число букв шаблона превышает 2, год интерпретируется буквально независимо от количества цифр. Поэтому использование шаблона "MM/dd/гггг", "01/11/12" синтаксический анализ до 11 января 12 A.D. <Li>Для синтаксического анализа с сокращенным шаблоном года ("y" или "y"), 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/02/003" или "01.02.003" используется тот же шаблон, что и 2 января 3 AD. Аналогичным образом, "01/02/-3" анализируется как 2 января 4 bc. </ul> в противном случае применяются определенные формы системы календаря. Для форматирования и синтаксического анализа используется определенная форма календаря #LONG long, если число букв шаблона равно 4 или более. В противном случае используется конкретная форма календаря#SHORT или сокращенная форма. <Br> Если указан год 'Y' недели, а календарь #getCalendar() не поддерживает никаких недель, вместо этого используется календарный год ('y'). Поддержка недельных лет может быть проверена с помощью вызова DateFormat#getCalendar() getCalendar().java.util.Calendar#isWeekDateSupported() isWeekDateSupported().</li><li><strong>"month"Month:<>/strong>, если число букв шаблона равно 3 или более, месяц интерпретируется как текст; в противном случае он интерпретируется как число. <ul><li>Letter <em>M</em> создает имена месяцев с учетом контекста, такие как внедренная форма имен. Буква <em>M</em> учитывает контекст в том смысле, что, если он используется в автономном шаблоне, например "MMMM", он предоставляет автономную форму имени месяца и когда он используется в шаблоне, содержающем другие поля, например "d MMMM", он дает формат имени месяца. Например, январь на каталонском языке является "de gener" в формате, пока он является "gener" в автономной форме. В этом случае "MMMM" будет производить "gener" и месяц части "d MMMM" будет производить "de gener". Если задано DateFormatSymbols явно с конструктором #SimpleDateFormat(String,DateFormatSymbols) или методом#setDateFormatSymbols(DateFormatSymbols), используются имена месяцев, заданные методомDateFormatSymbols.</li>><letter <em></em> создает автономную форму имен месяцев.</li></ul><br></li li>><<strong>"timezone">General time zone:/strong Time zone:</strong> Time zone интерпретируются как текст, если они имеют имена. Для часовых поясов, представляющих значение смещения GMT, используется следующий синтаксис:

<a id="GMTOffsetTimeZone"><i>GMTOffsetTimeZone:</i></a>
                        {@code GMT} <i>Sign</i> <i>Hours</i> {@code :} <i>Minutes</i>
<i>Sign:</i> one of
                        {@code + -}
<i>Hours:</i>
<i>Digit</i>
<i>Digit</i> <i>Digit</i>
<i>Minutes:</i>
<i>Digit</i> <i>Digit</i>
<i>Digit:</i> one of
                        {@code 0 1 2 3 4 5 6 7 8 9}

Часы должны быть от 0 до 23, а в минутах должно быть от 00 до 59. Формат является независимым языковым стандартом, и цифры должны быть взяты из блока Basic Latin стандарта Юникода.

Для синтаксического анализа также принимаются часовые пояса RFC 822.</li><li><strong>"rfc822timezone">RFC 822 часовой пояс:</strong> Для форматирования используется формат часового пояса RFC 822 4 цифры:

<i>RFC822TimeZone:</i>
<i>Sign</i> <i>TwoDigitHours</i> <i>Minutes</i>
<i>TwoDigitHours:</i>
<i>Digit Digit</i>

ДваDigitHours должны быть от 00 до 23. Другие определения относятся к общим часовых поясам.

Для синтаксического анализа также принимаются общие часовые пояса. <li><strong>"iso8601timezone">ISO 8601 Часовой пояс:</strong> Число букв шаблонов обозначает формат для форматирования и анализа следующим образом:

<i>ISO8601TimeZone:</i>
<i>OneLetterISO8601TimeZone</i>
<i>TwoLetterISO8601TimeZone</i>
<i>ThreeLetterISO8601TimeZone</i>
<i>OneLetterISO8601TimeZone:</i>
<i>Sign</i> <i>TwoDigitHours</i>
                        {@code Z}
<i>TwoLetterISO8601TimeZone:</i>
<i>Sign</i> <i>TwoDigitHours</i> <i>Minutes</i>
                        {@code Z}
<i>ThreeLetterISO8601TimeZone:</i>
<i>Sign</i> <i>TwoDigitHours</i> {@code :} <i>Minutes</i>
                        {@code Z}

Другие определения предназначены для общих часовых поясов или часовых поясов RFC 822.

Если значение смещения от GMT равно 0, "Z" создается для форматирования. Если число букв шаблона равно 1, любая доля часа игнорируется. Например, если шаблон и "X" часовой пояс является "GMT+05:30", "+05" создается.

Для синтаксического анализа буква "Z" анализируется как конструктор часового пояса UTC (поэтому "09:30Z" анализируется как "09:30 UTC". Общие часовые пояса <>не< принимаются.>

Если количество "X" букв шаблона равно 4 или более (например XXXX, при IllegalArgumentException создании SimpleDateFormat или #applyPattern(String) применяется шаблон. </ul> также поддерживает>< локализованные строки даты и времени</em>.SimpleDateFormat В этих строках буквы шаблонов, описанные выше, могут быть заменены другими, зависимыми от языкового стандарта, буквами шаблона. SimpleDateFormat не имеет дело с локализацией текста, отличного от букв шаблонов; это до клиента класса.

<h3>Examples</h3>

В следующих примерах показано, как интерпретируются шаблоны даты и времени в языковом стандарте США. Указанная дата и время: 2001-07-04 12:08:56 в часовом поясе США. <blockquote><table class="striped"><caption style="display:none">Examples of date and time patterns in the U.S. locale</caption><thead<>tr th scope="col" style="text-align:left">Date and Time Pattern <th scope="col" style="text-align:left">Result </thead<>tbody<>tr>><<th scope="row"td tr th scope="row"><"yyyy.MM.dd G 'at' HH:mm:ss z"td>2001.07.04 AD at 12:08:56 PDT<th<>scope="row">"EEE, MMM d, ''yy"<td>Wed, Jul 4, '01<tr th scope="row""h:mm a"><td tr th scope="row"<"hh 'o''clock' a, zzzz">td>><>12:08 PM<<12 o'clock PM, Pacific Daylight Timetr><th scope="row"><>"K:mm a, z"0:08 PM, PDT<td><tr th scope="row"<"yyyyy.MMMMM.dd GGG hh:mm aaa">td02001.July.04 AD 12:08 PM<>tr><th scope="row"<>"EEE, d MMM yyyy HH:mm:ss Z"td tr th scope="row">"yyMMddHHmmssZ"<td<<Wed, 4 Jul 2001 12:08:56 -0700><>>010704120856-0700tr><th scope="row">"yyyy-MM-dd'T'HH:mm:ss.SSSZ"<td2001-07-04T12:08:56.235-0700>><<tr><th scope="row"td tr<th scope="row"YYYY-'W'ww-u"<>"><"yyyy-MM-dd'T'HH:mm:ss.SSSXXX"td<<>2001-W27-3>2001-07-04T12:08:56.235-07:00/tbody></table<>/blockquote>>

<h3>"синхронизация">Синхронизация</h3>

Форматы дат не синхронизируются. Рекомендуется создать отдельные экземпляры формата для каждого потока. Если несколько потоков одновременно обращаются к формату, он должен быть синхронизирован вневне.

Добавлено в версии 1.1.

Документация по Java для java.text.SimpleDateFormat.

Части этой страницы — это изменения на основе работы, созданной и общей проектом с открытым исходным кодом Android и используемой в соответствии с условиями, описанными в лицензии Creative Commons 2.5 Attribution.

Конструкторы

SimpleDateFormat()

SimpleDateFormat Создает символы шаблона и формата даты по умолчанию для языкового стандарта по умолчаниюjava.util.Locale.Category#FORMAT FORMAT.

SimpleDateFormat(IntPtr, JniHandleOwnership)

Конструктор, используемый при создании управляемых представлений объектов JNI; вызывается средой выполнения.

SimpleDateFormat(String)

SimpleDateFormat Создает заданный шаблон и символы формата даты по умолчанию для языкового стандарта по умолчаниюjava.util.Locale.Category#FORMAT FORMAT.

SimpleDateFormat(String, DateFormatSymbols)

SimpleDateFormat Создает символы заданного шаблона и формата даты.

SimpleDateFormat(String, Locale)

Создает заданный SimpleDateFormat шаблон и символы формата даты по умолчанию для заданного языкового стандарта.

Поля

AmPmField

Полезная константа для выравнивания полей AM_PM.

(Унаследовано от DateFormat)
DateField

Полезная константа для выравнивания полей DATE.

(Унаследовано от DateFormat)
DayOfWeekField

Полезная константа для выравнивания полей DAY_OF_WEEK.

(Унаследовано от DateFormat)
DayOfWeekInMonthField

Полезная константа для выравнивания полей DAY_OF_WEEK_IN_MONTH.

(Унаследовано от DateFormat)
DayOfYearField

Полезная константа для выравнивания полей DAY_OF_YEAR.

(Унаследовано от DateFormat)
Default

Константа для шаблона стиля по умолчанию.

(Унаследовано от DateFormat)
EraField

Полезная константа для выравнивания полей ERA.

(Унаследовано от DateFormat)
Full

Константная для полного шаблона стиля.

(Унаследовано от DateFormat)
Hour0Field

Полезная константа для выравнивания полей с нуля.

(Унаследовано от DateFormat)
Hour1Field

Полезная константа для выравнивания полей НА основе одного часа.

(Унаследовано от DateFormat)
HourOfDay0Field

Полезная константа для выравнивания полей на основе нуля HOUR_OF_DAY.

(Унаследовано от DateFormat)
HourOfDay1Field

Полезная константа для выравнивания полей на основе одного HOUR_OF_DAY.

(Унаследовано от DateFormat)
Long

Константная для длинного шаблона стиля.

(Унаследовано от DateFormat)
Medium

Константа для шаблона среднего стиля.

(Унаследовано от DateFormat)
MillisecondField

Полезная константа для выравнивания полей MILLISECOND.

(Унаследовано от DateFormat)
MinuteField

Полезная константа для выравнивания полей MINUTE.

(Унаследовано от DateFormat)
MonthField

Полезная константа для выравнивания полей MONTH.

(Унаследовано от DateFormat)
SecondField

Полезная константа для выравнивания полей SECOND.

(Унаследовано от DateFormat)
Short

Константа для короткого шаблона стиля.

(Унаследовано от DateFormat)
TimezoneField

Полезная константа для выравнивания полей TIMEZONE.

(Унаследовано от DateFormat)
WeekOfMonthField

Полезная константа для выравнивания полей WEEK_OF_MONTH.

(Унаследовано от DateFormat)
WeekOfYearField

Полезная константа для выравнивания полей WEEK_OF_YEAR.

(Унаследовано от DateFormat)
YearField

Полезная константа для выравнивания полей YEAR.

(Унаследовано от DateFormat)

Свойства

Calendar

Возвращает календарь, связанный с этим форматировщиком даты и времени. -или- Задайте календарь, используемый в этом формате даты.

(Унаследовано от DateFormat)
Class

Возвращает класс среды выполнения этого Objectобъекта.

(Унаследовано от Object)
DateFormatSymbols

Возвращает копию символов формата даты и времени этого формата даты. -or- Задает символы формата даты и времени этого формата даты.

Handle

Дескриптор базового экземпляра Android.

(Унаследовано от Object)
JniIdentityHashCode

SimpleDateFormat — это конкретный класс для форматирования и анализа дат с учетом языкового стандарта.

(Унаследовано от Object)
JniPeerMembers

SimpleDateFormat — это конкретный класс для форматирования и анализа дат с учетом языкового стандарта.

Lenient

Укажите, является ли синтаксический анализ даты и времени мягким. -или- Укажите, является ли синтаксический анализ даты и времени мягким.

(Унаследовано от DateFormat)
NumberFormat

Получает метод форматирования чисел, который используется этим методом форматирования даты и времени для форматирования и анализа времени. -или- Позволяет задать форматировщик чисел.

(Унаследовано от DateFormat)
PeerReference

SimpleDateFormat — это конкретный класс для форматирования и анализа дат с учетом языкового стандарта.

(Унаследовано от Object)
ThresholdClass

Этот API поддерживает инфраструктуру Mono для Android и не предназначен для использования непосредственно из кода.

ThresholdType

Этот API поддерживает инфраструктуру Mono для Android и не предназначен для использования непосредственно из кода.

TimeZone

Возвращает часовой пояс. -или- задает часовой пояс для календаря этого DateFormat объекта.

(Унаследовано от DateFormat)

Методы

ApplyLocalizedPattern(String)

Применяет заданную локализованную строку шаблона к этому формату даты.

ApplyPattern(String)

Применяет указанную строку шаблона к этому формату даты.

Clone()

Создает и возвращает копию этого объекта.

(Унаследовано от _Format)
Dispose()

SimpleDateFormat — это конкретный класс для форматирования и анализа дат с учетом языкового стандарта.

(Унаследовано от Object)
Dispose(Boolean)

SimpleDateFormat — это конкретный класс для форматирования и анализа дат с учетом языкового стандарта.

(Унаследовано от Object)
Equals(Object)

Указывает, равен ли другой объект этому объекту.

(Унаследовано от Object)
Format(Date)

Date Форматирует строку даты и времени.

(Унаследовано от DateFormat)
Format(Date, StringBuffer, FieldPosition)

Форматирует заданную Date строку даты и времени и добавляет результат к заданному StringBuffer.

Format(Object)

Форматирует объект для создания строки.

(Унаследовано от _Format)
Format(Object, StringBuffer, FieldPosition)

Форматирует заданную Object строку даты и времени.

(Унаследовано от DateFormat)
FormatToCharacterIterator(Object)

Форматирует объект, создающий AttributedCharacterIteratorобъект.

(Унаследовано от _Format)
Get2DigitYearStart()

Возвращает начальную дату 100-летнего периода 2-разрядного года, интерпретируются как внутри.

GetHashCode()

Возвращает значение хэш-кода для объекта.

(Унаследовано от Object)
JavaFinalize()

Вызывается сборщиком мусора в объекте, когда сборка мусора определяет, что больше ссылок на объект нет.

(Унаследовано от Object)
Notify()

Пробуждение одного потока, ожидающего монитора этого объекта.

(Унаследовано от Object)
NotifyAll()

Просыпает все потоки, ожидающие монитора этого объекта.

(Унаследовано от Object)
Parse(String)

Анализирует текст с начала заданной строки для создания даты.

(Унаследовано от DateFormat)
Parse(String, ParsePosition)

Анализирует текст из строки для создания Date.

ParseObject(String)

Анализирует текст с начала заданной строки для создания объекта.

(Унаследовано от _Format)
ParseObject(String, ParsePosition)

Анализирует текст из строки для создания Date.

(Унаследовано от DateFormat)
Set2DigitYearStart(Date)

Задает 100-летний период 2-цифрных лет, который будет интерпретироваться как начало даты, в которой указывает пользователь.

SetHandle(IntPtr, JniHandleOwnership)

Задает свойство Handle.

(Унаследовано от Object)
ToArray<T>()

SimpleDateFormat — это конкретный класс для форматирования и анализа дат с учетом языкового стандарта.

(Унаследовано от Object)
ToLocalizedPattern()

Возвращает локализованную строку шаблона, описывающую этот формат даты.

ToPattern()

Возвращает строку шаблона, описывающую этот формат даты.

ToString()

Возвращает строковое представление объекта.

(Унаследовано от Object)
UnregisterFromRuntime()

SimpleDateFormat — это конкретный класс для форматирования и анализа дат с учетом языкового стандарта.

(Унаследовано от Object)
Wait()

Приводит к тому, что текущий поток будет ждать, пока он не проснется, как правило, при <>помощи уведомления</em> или <эм>прерванного</em>.

(Унаследовано от Object)
Wait(Int64)

Приводит к тому, что текущий поток будет ждать, пока он не проснется, как правило, при <>получении уведомления</>em или <>эм прервано< или> до тех пор, пока не истекло определенное количество реального времени.

(Унаследовано от Object)
Wait(Int64, Int32)

Приводит к тому, что текущий поток будет ждать, пока он не проснется, как правило, при <>получении уведомления</>em или <>эм прервано< или> до тех пор, пока не истекло определенное количество реального времени.

(Унаследовано от Object)

Явные реализации интерфейса

IJavaPeerable.Disposed()

SimpleDateFormat — это конкретный класс для форматирования и анализа дат с учетом языкового стандарта.

(Унаследовано от Object)
IJavaPeerable.DisposeUnlessReferenced()

SimpleDateFormat — это конкретный класс для форматирования и анализа дат с учетом языкового стандарта.

(Унаследовано от Object)
IJavaPeerable.Finalized()

SimpleDateFormat — это конкретный класс для форматирования и анализа дат с учетом языкового стандарта.

(Унаследовано от Object)
IJavaPeerable.JniManagedPeerState

SimpleDateFormat — это конкретный класс для форматирования и анализа дат с учетом языкового стандарта.

(Унаследовано от Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

SimpleDateFormat — это конкретный класс для форматирования и анализа дат с учетом языкового стандарта.

(Унаследовано от Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

SimpleDateFormat — это конкретный класс для форматирования и анализа дат с учетом языкового стандарта.

(Унаследовано от Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

SimpleDateFormat — это конкретный класс для форматирования и анализа дат с учетом языкового стандарта.

(Унаследовано от Object)

Методы расширения

JavaCast<TResult>(IJavaObject)

Выполняет преобразование типа, проверяемого средой выполнения Android.

JavaCast<TResult>(IJavaObject)

SimpleDateFormat — это конкретный класс для форматирования и анализа дат с учетом языкового стандарта.

GetJniTypeName(IJavaPeerable)

SimpleDateFormat — это конкретный класс для форматирования и анализа дат с учетом языкового стандарта.

Применяется к