Class std.datetime.timezone.WindowsTimeZone
This class is Windows-Only.
Represents a time zone from the Windows registry. Unfortunately, Windows
does not use the TZ Database. To use the TZ Database, use
PosixTimeZone
(which reads its information from the TZ Database
files on disk) on Windows by providing the TZ Database files and telling
PosixTimeZone
where the directory holding them is.
The TZ Database files and Windows' time zone information frequently
do not match. Windows has many errors with regards to when DST switches
occur (especially for historical dates). Also, the TZ Database files
include far more time zones than Windows does. So, for accurate
time zone information, use the TZ Database files with
PosixTimeZone
rather than WindowsTimeZone
. However, because
WindowsTimeZone
uses Windows system calls to deal with the time,
it's far more likely to match the behavior of other Windows programs.
Be aware of the differences when selecting a method.
WindowsTimeZone
does not exist on Posix systems.
To get a WindowsTimeZone
, either call
WindowsTimeZone
or call TimeZone
(which will give a PosixTimeZone
on Posix systems and a
WindowsTimeZone
on Windows systems).
Properties
Name | Type | Description |
---|---|---|
hasDST [get]
|
bool | Whether this time zone has Daylight Savings Time at any point in
time. Note that for some time zone types it may not have DST for
current dates but will still return true for hasDST because the
time zone did at some point have DST.
|
dstName [get]
|
string | Typically, the abbreviation (generally 3 or 4 letters) for the time zone when DST is in effect (e.g. PDT). It is not necessarily unique. |
name [get]
|
string | The name of the time zone per the TZ Database. This is the name used to
get a TimeZone by name with TimeZone .
|
stdName [get]
|
string | Typically, the abbreviation (generally 3 or 4 letters) for the time zone when DST is not in effect (e.g. PST). It is not necessarily unique. |
Methods
Name | Description |
---|---|
dstInEffect
|
Takes the number of hnsecs (100 ns) since midnight, January 1st, 1 A.D. in UTC time (i.e. std time) and returns whether DST is in effect in this time zone at the given point in time. |
getInstalledTZNames
|
Returns a list of the names of the time zones installed on the
system. The list returned by WindowsTimeZone contains the Windows
TZ names, not the TZ Database names. However,
TimeZone will return the TZ Database names
which are equivalent to the Windows TZ names.
|
getTimeZone
|
Returns a TimeZone with the given name per the Windows time
zone names. The time zone information is fetched from the Windows
registry.
|
tzToUTC
|
Takes the number of hnsecs (100 ns) since midnight, January 1st, 1 A.D. in this time zone's time and converts it to UTC (i.e. std time). |
utcToTZ
|
Takes the number of hnsecs (100 ns) since midnight, January 1st, 1 A.D. in UTC time (i.e. std time) and converts it to this time zone's time. |
factory
|
Create instance of class specified by the fully qualified name classname. The class must either have no constructors or have a default constructor. |
opCmp
|
Compare with another Object obj. |
opEquals
|
Test whether this is equal to o .
The default implementation only compares by identity (using the is operator).
Generally, overrides for opEquals should attempt to compare objects by their contents.
|
toHash
|
Compute hash function for Object. |
toString
|
Convert Object to a human readable string. |
utcOffsetAt
|
Returns what the offset from UTC is at the given std time. It includes the DST offset in effect at that time (if any). |
Properties
Name | Type | Description |
---|---|---|
hasDST [get]
|
bool | Whether this time zone has Daylight Savings Time at any point in
time. Note that for some time zone types it may not have DST for
current dates but will still return true for hasDST because the
time zone did at some point have DST.
|
dstName [get]
|
string | Typically, the abbreviation (generally 3 or 4 letters) for the time zone when DST is in effect (e.g. PDT). It is not necessarily unique. |
name [get]
|
string | The name of the time zone per the TZ Database. This is the name used to
get a TimeZone by name with TimeZone .
|
stdName [get]
|
string | Typically, the abbreviation (generally 3 or 4 letters) for the time zone when DST is not in effect (e.g. PST). It is not necessarily unique. |
Methods
Name | Description |
---|---|
dstInEffect
|
Takes the number of hnsecs (100 ns) since midnight, January 1st, 1 A.D. in UTC time (i.e. std time) and returns whether DST is in effect in this time zone at the given point in time. |
getInstalledTZNames
|
Returns a list of the names of the time zones installed on the
system. The list returned by WindowsTimeZone contains the Windows
TZ names, not the TZ Database names. However,
TimeZone will return the TZ Database names
which are equivalent to the Windows TZ names.
|
getTimeZone
|
Returns a TimeZone with the given name per the Windows time
zone names. The time zone information is fetched from the Windows
registry.
|
tzToUTC
|
Takes the number of hnsecs (100 ns) since midnight, January 1st, 1 A.D. in this time zone's time and converts it to UTC (i.e. std time). |
utcToTZ
|
Takes the number of hnsecs (100 ns) since midnight, January 1st, 1 A.D. in UTC time (i.e. std time) and converts it to this time zone's time. |
factory
|
Create instance of class specified by the fully qualified name classname. The class must either have no constructors or have a default constructor. |
opCmp
|
Compare with another Object obj. |
opEquals
|
Test whether this is equal to o .
The default implementation only compares by identity (using the is operator).
Generally, overrides for opEquals should attempt to compare objects by their contents.
|
toHash
|
Compute hash function for Object. |
toString
|
Convert Object to a human readable string. |
utcOffsetAt
|
Returns what the offset from UTC is at the given std time. It includes the DST offset in effect at that time (if any). |