TimeZone represents a time zone offset, and also figures out daylight
savings.
Typically, you get a TimeZone using getDefault
which creates a TimeZone based on the time zone where the program
is running. For example, for a program running in Japan, getDefault
creates a TimeZone object based on Japanese Standard Time.
You can also get a TimeZone using getTimeZone
along with a time zone ID. For instance, the time zone ID for the
U.S. Pacific Time zone is "America/Los_Angeles". So, you can get a
U.S. Pacific Time TimeZone object with:
TimeZone tz = TimeZone.getTimeZone("America/Los_Angeles");
You can use the getAvailableIDs method to iterate through
all the supported time zone IDs. You can then choose a
supported ID to get a TimeZone.
If the time zone you want is not represented by one of the
supported IDs, then a custom time zone ID can be specified to
produce a TimeZone. The syntax of a custom time zone ID is:
Hours must be between 0 to 23 and Minutes must be between 00 to 59. For example, "GMT+10" and "GMT+0010" mean ten hours and ten minutes ahead of GMT, respectively.CustomID:GMTSign Hours:MinutesGMTSign Hours MinutesGMTSign Hours Sign: one of+ -Hours: Digit Digit Digit Minutes: Digit Digit Digit: one of0 1 2 3 4 5 6 7 8 9
The format is locale independent and digits must be taken from the
Basic Latin block of the Unicode standard. No daylight saving time
transition schedule can be specified with a custom time zone ID. If
the specified string doesn't match the syntax, "GMT"
is used.
When creating a TimeZone, the specified custom time
zone ID is normalized in the following syntax:
For example, TimeZone.getTimeZone("GMT-8").getID() returns "GMT-08:00".NormalizedCustomID:GMTSign TwoDigitHours:Minutes Sign: one of+ -TwoDigitHours: Digit Digit Minutes: Digit Digit Digit: one of0 1 2 3 4 5 6 7 8 9
CalendarGregorianCalendarSimpleTimeZonegetDisplayName() indicating
a short name, such as "PST."
LONGgetDisplayName() indicating
a long name, such as "Pacific Standard Time."
SHORT
This method returns a historically correct offset if an
underlying TimeZone implementation subclass
supports historical Daylight Saving Time schedule and GMT
offset changes.
era the era of the given date.year the year in the given date.month the month in the given date.
Month is 0-based. e.g., 0 for January.day the day-in-month of the given date.dayOfWeek the day-of-week of the given date.milliseconds the milliseconds in day in standard
local time.Calendar.ZONE_OFFSETCalendar.DST_OFFSETThis method returns a historically correct offset value if an underlying TimeZone implementation subclass supports historical Daylight Saving Time schedule and GMT offset changes.
date the date represented in milliseconds since January 1, 1970 00:00:00 GMTCalendar.ZONE_OFFSETCalendar.DST_OFFSETdate the milliseconds (since January 1, 1970,
00:00:00.000 GMT) at which the time zone offset and daylight
saving amount are foundoffset an array of int where the raw GMT offset
(offset[0]) and daylight saving amount (offset[1]) are stored,
or null if those values are not needed. The method assumes that
the length of the given array is two or larger.Calendar.ZONE_OFFSETCalendar.DST_OFFSET
If an underlying TimeZone implementation subclass
supports historical GMT offset changes, the specified GMT
offset is set as the latest GMT offset and the difference from
the known latest GMT offset value is used to adjust all
historical GMT offset values.
offsetMillis the given base time zone offset to GMT.
If an underlying TimeZone implementation subclass
supports historical GMT offset changes, the method returns the
raw offset value of the current date. In Honolulu, for example,
its raw offset changed from GMT-10:30 to GMT-10:00 in 1947, and
this method always returns -36000000 milliseconds (i.e., -10
hours).
Calendar.ZONE_OFFSETlocale the locale in which to supply the display name.daylight if true, return the daylight savings name.style either LONG or SHORTdaylight if true, return the daylight savings name.style either LONG or SHORTlocale the locale in which to supply the display name.java.lang.IllegalArgumentException style is invalid.The default implementation always returns 3600000 milliseconds (i.e., one hour) if this time zone observes Daylight Saving Time. Otherwise, 0 (zero) is returned.
If an underlying TimeZone implementation subclass supports historical Daylight Saving Time changes, this method returns the known latest daylight saving value.
If an underlying TimeZone implementation subclass
supports historical Daylight Saving Time schedule changes, the
method refers to the latest Daylight Saving Time schedule
information.
TimeZone for the given ID.
ID the ID for a TimeZone, either an abbreviation
such as "PST", a full name such as "America/Los_Angeles", or a custom
ID such as "GMT-8:00". Note that the support of abbreviations is
for JDK 1.1.x compatibility only and full names should be used.TimeZone, or the GMT zone if the given ID
cannot be understood.rawOffset the given time zone GMT offset in milliseconds.getRawOffset()TimeZone for this host.
The source of the default TimeZone
may vary with implementation.
TimeZone.setDefault(java.util.TimeZone)TimeZone that is
returned by the getDefault method. If zone
is null, reset the default to the value it had originally when the
VM first started.
zone the new default time zonegetDefault()other the TimeZone object to be compared withid a string of the custom ID form.