DateTime
GDateTime
is a structure that combines a Gregorian date and time into a single structure.
GDateTime
provides many conversion and methods to manipulate dates and times. Time precision is provided down to microseconds and the time can range (proleptically) from 0001-01-01 00:00:00 to 9999-12-31 23:59:59.999999. GDateTime
follows POSIX time in the sense that it is oblivious to leap seconds.
GDateTime
is an immutable object; once it has been created it cannot be modified further. All modifiers will create a new GDateTime
. Nearly all such functions can fail due to the date or time going out of range, in which case null will be returned.
GDateTime
is reference counted: the reference count is increased by calling method@GLib.DateTime.ref and decreased by calling method@GLib.DateTime.unref. When the reference count drops to 0, the resources allocated by the GDateTime
structure are released.
Many parts of the API may produce non-obvious results. As an example, adding two months to January 31st will yield March 31st whereas adding one month and then one month again will yield either March 28th or March 29th. Also note that adding 24 hours is not always the same as adding one day (since days containing daylight savings time transitions are either 23 or 25 hours in length).
Skipped during bindings generation
parameter
dt2
: DateTimeparameter
dt2
: DateTimeparameter
year
: year: Out parameter is not supported
Since
2.26
Constructors
Functions
Creates a new #GDateTime adding the specified values to the current date and time in @datetime. Add negative values to subtract.
Creates a copy of @datetime adding the specified number of minutes. Add negative values to subtract minutes.
Creates a copy of @datetime and adds the specified number of seconds. Add negative values to subtract seconds.
Calculates the difference in time between @end and @begin. The #GTimeSpan that is returned is effectively @end - @begin (ie: positive if the first parameter is larger).
Format @datetime in ISO 8601 format, including the date, time and time zone, and return that as a UTF-8 encoded string.
Retrieves the day of the month represented by @datetime in the gregorian calendar.
Retrieves the ISO 8601 day of the week on which @datetime falls (1 is Monday, 2 is Tuesday... 7 is Sunday).
Retrieves the day of the year represented by @datetime in the Gregorian calendar.
Retrieves the microsecond of the date represented by @datetime
Retrieves the number of seconds since the start of the last minute, including the fractional part.
Get the time zone for this @datetime.
Determines the time zone abbreviation to be used at the time and in the time zone of @datetime.
Determines the offset to UTC in effect at the time and in the time zone of @datetime.
Returns the ISO 8601 week-numbering year in which the week containing
Returns the ISO 8601 week number for the week containing @datetime. The ISO 8601 week number is the same for every day of the week (from Moday through Sunday). That can produce some unusual results (described below).
Determines if daylight savings time is in effect at the time and in the time zone of @datetime.
Create a new #GDateTime corresponding to the same instant in time as
Gives the Unix time corresponding to @datetime, in microseconds.