Spec-Zone .ru
спецификации, руководства, описания, API
|
Этот календарь документов страницы системы, поддерживаемые в Java Sun Комплект разработчика 6 SE (JDK) и Java Среда выполнения SE 6 (JRE). Другие реализации Java Платформа SE могут поддерживать различные календарные системы.
Calendar
абстрактный базовый класс для того, чтобы преобразовать между a Date
объект и ряд целочисленных полей такой как YEAR
, MONTH
, DAY
, HOUR
, и так далее. Подклассы Calendar
интерпретируйте a Date
согласно правилам определенной календарной системы. Платформа обеспечивает один общедоступный конкретный подкласс Calendar
: GregorianCalendar
. Метод фабрики, Calendar.getInstance
, возвращает конкретную календарную системную реализацию для данного Locale
. Следующее является поддерживаемыми календарными системами:
Locale |
Календарная Система |
С тех пор (версия JRE) |
---|---|---|
th_TH (с любой разновидностью) |
Тайский буддистский календарь |
1.4 |
ja_JP_JP |
Японский имперский календарь |
1.6 |
Любой кроме вышеупомянутого Locale s |
Григорианский календарь (GregorianCalendar ) |
1.1 |
Calendar.getInstance
метод возвращает тайский буддистский календарный экземпляр, если тайская локаль определяется, который определяется ее языком и значениями страны. Эта тайская буддистская календарная реализация поддерживает даты точно от B.E. 2484 (Грегорианский 1941). Исторические календарные системные переходы не поддерживаются реализацией. Calendar.ERA
значение в течение буддистской Эры 1.Calendar.getInstance
метод возвращает японский имперский календарный экземпляр, если ja_JP_JP локаль определяется. Эта реализация поддерживает эры начиная с Мэйдзи со следующими датами перехода.GregorianCalendar
, японская имперская календарная реализация не поддерживает никого Юлианского к Грегорианскому переходу, и год, нумеруя прежде, чем Грегорианский 1 будет 0,-1,-2..., не 1, 2, 3... Строго говоря Григорианский календарь используется с 1873 (Мэйдзи 5), и другие календарные системы использовались перед тем годом. Однако, реализация определяет первый день Мэйдзи как 1 января 1868, который не исторически точен. Японские декреты, связанные с календарными системами, не определяют, как иметь дело с часовыми поясами за пределами Японии. Реализация предполагает, что переходы эры происходят в полночь в местное время в любом часовом поясе.Календарное поле |
Описание |
---|---|
WEEK_OF_YEAR |
Определить первое WEEK_OF_YEAR из года 1 в каждую эру, те же самые правила, поскольку применяется определение первой недели к первому дню недели и минимальным дням в первых недельных значениях. Например, если первый день недели SUNDAY и минимальные дни на первой неделе 1, WEEK_OF_YEAR значение от 18.12.1926 является 51 из Тайсё 15, и значение от 25.12.1926 является 1 из Showa 1. |
DAY_OF_YEAR |
DAY_OF_YEAR значение первого дня каждой эры 1. Например, смотря на переход между эрами Showa и Heisei, в последний день эры Showa (Showa 07.01.64, грегорианское значение 07.01.1989) 7 и на следующий день, который является первым днем эры Heisei (Heisei 1.01.08), 1. getLeastMaximum метод возвращает минимальное значение всего года 1 длина в днях. |
DateFormat
у экземпляра есть a Calendar
экземпляр для внутренних разовых датой преобразований, основанных на данном Locale
или значение по умолчанию один. То же самое правило применяется для того, чтобы создать a Calendar
экземпляр. Например, если ja_JP_JP локаль определяется, DateFormat.getDateInstance
метод возвращает a DateFormat
экземпляр, который обрабатывает японские имперские календарные даты. Следующий код:DateFormat df = DateFormat.getDateInstance(DateFormat.FULL,произведет вывод, как:
new Locale("ja", "JP", "JP"));
System.out.println(df.format(new Date()));
平成17年10月25日
Кроме того, DateFormat.parse
метод анализирует строку даты с имперской эрой. Следующий код:System.out.println(df.parse("平成元年10月25日"));произведет вывод в часовом поясе Азии/Токио:
Wed Oct 25 00:00:00 JST 1989Отметьте это a
Date
объект, возвращенный DateFormat.parse
метод представляет соответствующую Грегорианскую дату. Преобразовать a Date
к японской имперской дате, Calendar.setTime
метод должен использоваться с данным Date
.SimpleDateFormat
, следующие правила применяются для тайских буддистских и японских имперских календарных систем.Календарная система |
Буква образца |
Описание |
---|---|---|
Тайский буддист | G |
Число букв образца не влияет на выведенные на экран имена эры. |
Тайский буддист | y |
То же самое правило числа образца обозначает буквами как GregorianCalendar применяется. |
Японский империал | G |
Для того, чтобы отформатировать, если число букв образца 4 или больше, используются длинные имена эры (например, "平成"). Иначе, сокращения (например, "H") используются. Для того, чтобы проанализировать, принимаются и длинные имена эры и сокращения. |
Японский империал | y |
Для того, чтобы отформатировать, если число букв образца 4 или больше, первый год эры форматируется как локаль определенное представление, такое как "元" в японской локали. Другие значения года выводятся на экран как числа. 2-и 4-разрядные правила GregorianCalendar форматирование даты не применяется. Для того, чтобы проанализировать, и локаль принимаются определенное представление и представление числа. |
DateFormat df = DateFormat.getDateInstance(DateFormat.FULL,произведет вывод, как:
new Locale("th", "TH", "TH"));
System.out.println(df.format(new Date()));
Calendar
объект, возвращенный Calendar.getInstance
метод фабрики сериализируется и отправляется другой JVM, десериализации объектных сбоев, если целевая JVM не поддерживает то же самое Calendar
подкласс, который использовался, чтобы создать сериализированный Calendar
объект. Пожалуйста, удостоверьтесь что то же самое Calendar
подклассы поддерживаются в JVM, где требуется обмениваться сериализированный Calendar
объекты.