Qore Programming Language Reference Manual 1.18.0
|
The TimeZone class provides access to time zone functionality. More...
#include <QC_TimeZone.dox.h>
Public Member Methods | |
int | UTCOffset () |
Returns the number of seconds east of UTC for the zone; negative numbers indicate a zone west of UTC. More... | |
constructor (string region) | |
Creates the TimeZone object based on the region name (ex: "America/Chicago" ) More... | |
constructor (softint seconds_east) | |
Creates the TimeZone object based on the number of seconds east of UTC (3600 = UTC +01) More... | |
copy () | |
Creates a copy of the TimeZone object. More... | |
date | date (softint secs, softint us=0) |
Returns the equivalent date in the time zone of the current object. More... | |
date | date (date d) |
Returns the equivalent date in the time zone of the current object. More... | |
date | date (string dtstr) |
Returns the equivalent date in the time zone of the current object. More... | |
date | date (string dtstr, string mask) |
Returns a date/time value in the current TimeZone corresponding to parsing a string argument according to a format mask. More... | |
date | dateMs (softint ms) |
Returns a date in the object's zone based on an offsets in milliseconds from 1970-01-01Z . More... | |
date | dateUs (softint us) |
Returns a date in the object's zone based on an offsets in microseconds from 1970-01-01Z . More... | |
bool | hasDST () |
Returns True if the zone has daylight saving time rules, False if not. More... | |
string | region () |
Returns the region name as a string; if the current zone is based on a UTC offset, then the UTC offset is returned as a string like "+01:00" . More... | |
Public Member Methods inherited from Qore::Serializable | |
constructor () | |
The constructor does not perform any action; this class is just used to mark a class as serializable by inheriting this class. | |
copy () | |
The copy constructor does not perform any action; this class is just used to mark a class as serializable by inheriting this class. | |
serialize (OutputStream stream) | |
converts the object to binary data representing the object More... | |
binary | serialize () |
converts the object to binary data representing the object More... | |
hash< SerializationInfo > | serializeToData () |
converts the object to a serialization hash representing the object More... | |
Static Public Member Methods | |
static TimeZone | get () |
Returns a TimeZone object for the current time zone. More... | |
static nothing | set (TimeZone zone) |
Sets the time zone for the current Program object from a TimeZone object. More... | |
static nothing | setRegion (string region) |
Sets the time zone for the current Program object from a time zone region name. More... | |
static nothing | setUTCOffset (softint seconds_east) |
Sets the time zone for the current Program object from an integer offset in seconds east of UTC. More... | |
Static Public Member Methods inherited from Qore::Serializable | |
static auto | deserialize (InputStream stream) |
Deserializes data produced with serialize() and returns the value represented by the data. More... | |
static auto | deserialize (binary bin) |
Deserializes data produced with serialize() and returns the value represented by the data. More... | |
static auto | deserialize (string bin) |
Deserializes data produced with serialize() and returns the value represented by the data. More... | |
static auto | deserialize (hash< SerializationInfo > data) |
Deserializes data produced with serializeToData() and returns the value represented by the data. More... | |
static hash< SerializationInfo > | deserializeToData (InputStream stream) |
Deserializes data produced with serialize() and returns the value represented by the data. More... | |
static hash< SerializationInfo > | deserializeToData (binary bin) |
Deserializes data produced with serialize() and returns the value represented by the data. More... | |
static | serialize (auto val, OutputStream stream) |
serializes the data and writes the serialized data to the given output stream More... | |
static binary | serialize (auto val) |
serializes the data and returns the serialized data as a binary object More... | |
static hash< SerializationInfo > | serializeToData (auto val) |
converts the value to a serialization hash representing the value More... | |
The TimeZone class provides access to time zone functionality.
TimeZone objects based on zoneinfo region files (on UNIX) or registry information (on Windows) can have daylight savings time information; those based on UTC offsets have none.
The TimeZone class supports data serialization; deserialization can fail if the object is based on a region that is not present on the target machine.
Qore::TimeZone::constructor | ( | softint | seconds_east | ) |
Creates the TimeZone object based on the number of seconds east of UTC (3600 = UTC +01)
seconds_east | The number of seconds east of UTC for the time zone; for zones west of UTC, use negative numbers |
Qore::TimeZone::constructor | ( | string | region | ) |
Creates the TimeZone object based on the region name (ex: "America/Chicago"
)
region | The region name for the time zone (ex: "America/Chicago" ); if the zoneinfo file for the region cannot be found or parsed (on UNIX) or if the registry entry cannot be found (on Windows), then an exception is thrown |
"Europe/Prague"
) are converted to registry entries under HKEY_LOCAL_MACHINE SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones
(ex: "Central Europe Standard Time"
); on Windows you can also pass a registry key directly (ex: "Central Europe Standard Time"
) as the region, in this case it will be used to find the timezone info in registry, however the region name will then be converted to the first corresponding zoneinfo region according to alphabet (ex: "Central Europe Standard Time"
-> "Europe/Belgrade"
); if an absolute path to a file is given as the argument, then a zoneinfo file is read and parsed from the given locationTZINFO-ERROR | Unable to read zoneinfo file; invalid file magic; error parsing zoneinfo file, etc |
ILLEGAL-FILESYSTEM-ACCESS | thrown if a path was passed for region and the Qore::PO_NO_FILESYSTEM sandboxing restriction is set |
Qore::TimeZone::copy | ( | ) |
Creates a copy of the TimeZone object.
date Qore::TimeZone::date | ( | date | d | ) |
Returns the equivalent date in the time zone of the current object.
d | A date that will be used to create the date in the time zone of the objects; the same point in time will be returned but in the time zone of the object |
date Qore::TimeZone::date | ( | softint | secs, |
softint | us = 0 |
||
) |
Returns the equivalent date in the time zone of the current object.
secs | offset are in seconds from 1970-01-01Z |
us | offset are in microseconds from 1970-01-01Z |
date Qore::TimeZone::date | ( | string | dtstr | ) |
Returns the equivalent date in the time zone of the current object.
dtstr | The string to be used to return a date in the object's time zone |
Returns a date/time value in the current TimeZone corresponding to parsing a string argument according to a format mask.
dtstr | a string giving a date |
mask | the mask for the date value; see Date Mask Format for information on the format of the format mask |
DATE-CONVERT-ERROR | invalid mask specification |
date Qore::TimeZone::dateMs | ( | softint | ms | ) |
Returns a date in the object's zone based on an offsets in milliseconds from 1970-01-01Z
.
ms | an offsets in milliseconds from 1970-01-01Z |
1970-01-01Z
date Qore::TimeZone::dateUs | ( | softint | us | ) |
Returns a date in the object's zone based on an offsets in microseconds from 1970-01-01Z
.
us | an offsets in microseconds from 1970-01-01Z |
1970-01-01Z
|
static |
bool Qore::TimeZone::hasDST | ( | ) |
Returns True if the zone has daylight saving time rules, False if not.
TimeZone objects based on zoneinfo region files (on UNIX) or registry information (on Windows) can have (but do not necessarily have) daylight savings time information; those based on UTC offsets have none
string Qore::TimeZone::region | ( | ) |
Returns the region name as a string; if the current zone is based on a UTC offset, then the UTC offset is returned as a string like "+01:00"
.
"+01:00"
|
static |
Sets the time zone for the current Program object from a TimeZone object.
zone | the time zone to set |
|
static |
Sets the time zone for the current Program object from a time zone region name.
region | the region name to set |
"Europe/Prague"
) as well as the Windows registry keys under HKEY_LOCAL_MACHINE SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones
(ex: "Central Europe Standard Time"
); note that in this case the Windows-style names will only be used to load the timezone info from registry and the name will then be converted to the first corresponding zoneinfo region according to alphabet (ex: "Central Europe Standard Time"
-> "Europe/Belgrade"
).
|
static |
Sets the time zone for the current Program object from an integer offset in seconds east of UTC.
seconds_east | the number of seconds east of UTC for the new time zone (negative numbers give seconds west of UTC) |