Symbian
Symbian Developer Library

SYMBIAN OS V9.4

Feedback

[Index] [Previous] [Next]

#include <e32std.h>
Link against: euser.lib

Class TDateTime

class TDateTime;

Description

A date and time object in which the individual components are accessible in human-readable form.

The individual components are: year, month, day, hour, minute, second and microsecond.

These components are stored as integers and all except the year are checked for validity when a TDateTime is constructed or assigned new values.

This class only supports getting and setting the entire date/time or any component of it. It does not support adding or subtracting intervals to or from a time. For functions which manipulate times, use class TTime.

Members

Defined in TDateTime:


Construction and destruction


TDateTime()

inline TDateTime();

Description

Constructs an uninitialised TDateTime object.


TDateTime(TInt,TMonth,TInt,TInt,TInt,TInt,TInt)

IMPORT_C TDateTime(TInt aYear, TMonth aMonth, TInt aDay, TInt aHour, TInt aMinute, TInt aSecond, TInt aMicroSecond);

Description

Constructs the TDateTime object with the seven fields which comprise a date and time.

Parameters

TInt aYear

The year. No check is made for validity.

TMonth aMonth

The month. Range is EJanuary to EDecember.

TInt aDay

The day. Range is zero to number of days in month minus one.

TInt aHour

The hour. Range is 0 to 23.

TInt aMinute

The minute. Range is 0 to 59.

TInt aSecond

The second. Range is 0 to 59

TInt aMicroSecond

The microsecond. Range is 0 to 999999

Panic codes

USER

3, if an attempt is made to set an invalid value for any of the fields, except for the year. No check is made upon the validity of the year.

[Top]


Member functions


Set(TInt,TMonth,TInt,TInt,TInt,TInt,TInt)

IMPORT_C TInt Set(TInt aYear, TMonth aMonth, TInt aDay, TInt aHour, TInt aMinute, TInt aSecond, TInt aMicroSecond);

Description

Sets all date and time components.

Note:

1. When setting the day and month, subtract one because the ranges are offset from zero.

2. If the function returns an error, only those fields preceding the field which caused the error will be changed. For example, if the hour is out of range, the year, month and day will be set, all other components will remain unchanged.

Parameters

TInt aYear

Year. No check is made on its validity, except that if the date is set to February 29th, the year can only be set to a leap year, otherwise an error is returned.

TMonth aMonth

Month. The valid range is EJanuary to EDecember. If an attempt is made to set an invalid month, or if the current day number in the month is greater than or equal to the number of days in the new month, an error is returned.

TInt aDay

The number of the day within the month, offset from zero. If greater than or equal to the total number of days in the month,an error is returned.

TInt aHour

Hour. Range is 0 to 23.

TInt aMinute

Minute. Range is 0 to 59.

TInt aSecond

Second. Range is 0 to 59.

TInt aMicroSecond

Microsecond. Range is 0 to 999999.

Return value

TInt

KErrNone if successful, KErrGeneral if not.


SetYear(TInt)

IMPORT_C TInt SetYear(TInt aYear);

Description

Sets the year without a leap year check.

No check is made on the validity of the year except that if the current date is February 29th, the year can only be changed to another leap year, otherwise an error is returned.

Parameters

TInt aYear

The year.

Return value

TInt

KErrNone if successful, KErrGeneral if not.


SetYearLeapCheck(TInt)

IMPORT_C TInt SetYearLeapCheck(TInt aYear);

Description

Sets the year with a leap year check.

Unlike TDateTime::SetYear(TInt), if the date is the 29th February, this function allows the year to be set to a non-leap year. In this case, the date is reset to the 28th February.

Parameters

TInt aYear

The year.

Return value

TInt

KErrNone if successful, KErrGeneral if not.

See also:


SetMonth(TMonth)

IMPORT_C TInt SetMonth(TMonth aMonth);

Description

Sets the month component of the date/time.

Parameters

TMonth aMonth

The month to be set. The range is from EJanuary to EDecember. If an attempt is made to set an invalid month, or if the current day number in the month is greater than or equal to the number of days in the new month, an error is returned.

Return value

TInt

KErrNone if successful, KErrGeneral if not.


SetDay(TInt)

IMPORT_C TInt SetDay(TInt aDay);

Description

Sets the day component of the date/time.

Parameters

TInt aDay

The number of the day within the month, offset from zero. If equal to or greater than the total number of days in the month, an error is returned.

Return value

TInt

KErrNone if successful, KErrGeneral if not.


SetHour(TInt)

IMPORT_C TInt SetHour(TInt aHour);

Description

Sets the hour component of the date/time.

Parameters

TInt aHour

The hour. Range is 0 to 23.

Return value

TInt

KErrNone if successful, KErrGeneral if not.


SetMinute(TInt)

IMPORT_C TInt SetMinute(TInt aMinute);

Description

Sets the minute component of the date/time.

Parameters

TInt aMinute

The minute. Range is 0 to 59.

Return value

TInt

KErrNone if successful, KErrGeneral if not.


SetSecond(TInt)

IMPORT_C TInt SetSecond(TInt aSecond);

Description

Sets the second component of the date/time.

Parameters

TInt aSecond

The second. Range is 0 to 59.

Return value

TInt

KErrNone if successful, KErrGeneral if not.


SetMicroSecond(TInt)

IMPORT_C TInt SetMicroSecond(TInt aMicroSecond);

Description

Sets the microsecond component of the date/time.

Parameters

TInt aMicroSecond

The microsecond. Range is 0 to 999999.

Return value

TInt

KErrNone if successful, KErrGeneral if not.


Year()const

inline TInt Year() const;

Description

Gets the year component of the date/time.

A negative value indicates a BC date.

Return value

TInt

The year


Month()const

inline TMonth Month() const;

Description

Gets the month component of the date/time.

Return value

TMonth

The month. EJanuary to EDecember. Offset from zero, so add one before displaying the month number.


Day()const

inline TInt Day() const;

Description

Gets the day component of the date/time.

Return value

TInt

The day. Offset from zero, so add one before displaying the day number.


Hour()const

inline TInt Hour() const;

Description

Gets the hour component of the date/time.

Return value

TInt

The hour.


Minute()const

inline TInt Minute() const;

Description

Gets the minute component of the date/time.

Return value

TInt

The minute.


Second()const

inline TInt Second() const;

Description

Gets the second component of the date/time.

Return value

TInt

The second.


MicroSecond()const

inline TInt MicroSecond() const;

Description

Gets the microsecond component of the date/time.

Return value

TInt

The microsecond.