Go to the documentation of this file.
18 #if !UCONFIG_NO_FORMATTING
163 #define UCAL_UNKNOWN_ZONE_ID "Etc/Unknown"
444 #ifndef U_FORCE_HIDE_DEPRECATED_API
450 #endif // U_FORCE_HIDE_DEPRECATED_API
662 #ifndef U_HIDE_DRAFT_API
696 #endif // U_HIDE_DRAFT_API
765 #if U_SHOW_CPLUSPLUS_API
824 int32_t resultLength,
863 int32_t resultLength,
const char * ucal_getAvailable(int32_t localeIndex)
Get a locale for which calendars are available.
void ucal_setAttribute(UCalendar *cal, UCalendarAttribute attr, int32_t newValue)
Set a numeric attribute associated with a UCalendar.
Designates a day that starts as a weekday and transitions to the weekend.
Field number indicating the daylight savings offset in milliseconds.
UCalendarWeekdayType ucal_getDayOfWeekType(const UCalendar *cal, UCalendarDaysOfWeek dayOfWeek, UErrorCode *status)
Returns whether the given day of the week is a weekday, a weekend day, or a day that transitions from...
Unambiguously designates the Gregorian calendar for the locale.
void ucal_roll(UCalendar *cal, UCalendarDateFields field, int32_t amount, UErrorCode *status)
Add a specified signed amount to a particular field in a UCalendar.
UCalendarAMPMs
Possible AM/PM values in a UCalendar.
void ucal_setMillis(UCalendar *cal, UDate dateTime, UErrorCode *status)
Set a UCalendar's current time in millis.
UDate ucal_getNow(void)
Get the current date and time.
const char * ucal_getLocaleByType(const UCalendar *cal, ULocDataLocaleType type, UErrorCode *status)
Get the locale for this calendar object.
int32_t ucal_getWindowsTimeZoneID(const UChar *id, int32_t len, UChar *winid, int32_t winidCapacity, UErrorCode *status)
Converts a system time zone ID to an equivalent Windows time zone ID.
UBool ucal_isWeekend(const UCalendar *cal, UDate date, UErrorCode *status)
Returns TRUE if the given UDate is in the weekend in this calendar system.
An ambiguous wall time to be interpreted as the latest.
void ucal_setDate(UCalendar *cal, int32_t year, int32_t month, int32_t date, UErrorCode *status)
Set a UCalendar's current date.
Basic definitions for ICU, for both C and C++ APIs.
UCalendarWallTimeOption
Options for handling ambiguous wall time at time zone offset transitions.
int32_t ucal_getDefaultTimeZone(UChar *result, int32_t resultCapacity, UErrorCode *ec)
Return the default time zone.
UDate ucal_getGregorianChange(const UCalendar *cal, UErrorCode *pErrorCode)
Gets the Gregorian Calendar change date.
Field number indicating the month.
int8_t UBool
The ICU boolean type.
Field number indicating the raw offset from GMT in milliseconds.
void ucal_setDefaultTimeZone(const UChar *zoneID, UErrorCode *ec)
Set the default time zone.
ULocDataLocaleType
Constants for *_getLocale() Allow user to select whether she wants information on requested,...
Field number indicating the ordinal number of the day of the week within the current month.
int32_t ucal_getHostTimeZone(UChar *result, int32_t resultCapacity, UErrorCode *ec)
Return the current host time zone.
UCalendarLimitType
Possible limit values for a UCalendar.
int32_t ucal_getDSTSavings(const UChar *zoneID, UErrorCode *ec)
Return the amount of time in milliseconds that the clock is advanced during daylight savings time for...
Field number indicating the modified Julian day number.
UDate ucal_getMillis(const UCalendar *cal, UErrorCode *status)
Get a UCalendar's current time in millis.
UCalendar * ucal_clone(const UCalendar *cal, UErrorCode *status)
Open a copy of a UCalendar.
void ucal_close(UCalendar *cal)
Close a UCalendar.
Field number indicating the day number within the current year.
Short standard display name.
UBool ucal_isSet(const UCalendar *cal, UCalendarDateFields field)
Determine if a field in a UCalendar is set.
int32_t ucal_getAttribute(const UCalendar *cal, UCalendarAttribute attr)
Get a numeric attribute associated with a UCalendar.
Minimum number of days in first week.
int32_t ucal_getTimeZoneIDForWindowsID(const UChar *winid, int32_t len, const char *region, UChar *id, int32_t idCapacity, UErrorCode *status)
Converts a Windows time zone ID to an equivalent system time zone ID for a region.
Field number indicating the week number within the current month.
Canonical system zones associated with actual locations.
void ucal_setGregorianChange(UCalendar *cal, UDate date, UErrorCode *pErrorCode)
Sets the GregorianCalendar change date.
const char * ucal_getTZDataVersion(UErrorCode *status)
Returns the timezone data version currently used by ICU.
void ucal_add(UCalendar *cal, UCalendarDateFields field, int32_t amount, UErrorCode *status)
Add a specified signed amount to a particular field in a UCalendar.
Field number indicating the millisecond within the second.
int32_t ucal_getWeekendTransition(const UCalendar *cal, UCalendarDaysOfWeek dayOfWeek, UErrorCode *status)
Returns the time during the day at which the weekend begins or ends in this calendar system.
Year of this calendar system, encompassing all supra-year fields.
Get the next transition on or after the current date, i.e.
Designates a day that starts as the weekend and transitions to a weekday.
Field number indicating the minute within the hour.
UErrorCode
Standard ICU4C error code type, a substitute for exceptions.
void ucal_setDateTime(UCalendar *cal, int32_t year, int32_t month, int32_t date, int32_t hour, int32_t minute, int32_t second, UErrorCode *status)
Set a UCalendar's current date.
UBool ucal_inDaylightTime(const UCalendar *cal, UErrorCode *status)
Determine if a UCalendar is currently in daylight savings time.
int32_t ucal_get(const UCalendar *cal, UCalendarDateFields field, UErrorCode *status)
Get the current value of a field from a UCalendar.
int32_t ucal_getTimeZoneDisplayName(const UCalendar *cal, UCalendarDisplayNameType type, const char *locale, UChar *result, int32_t resultLength, UErrorCode *status)
Get the display name for a UCalendar's TimeZone.
void ucal_set(UCalendar *cal, UCalendarDateFields field, int32_t value)
Set the value of a field in a UCalendar.
Field number indicating the day of the week.
Field number indicating the extended year corresponding to the UCAL_WEEK_OF_YEAR field.
Whether or not the current month is a leap month (0 or 1).
Field number indicating the day of the month.
Field number indicating the year.
UTimeZoneTransitionType
Time zone transition types for ucal_getTimeZoneTransitionDate.
Designates a full weekend day (the entire day is included in the weekend).
UBool ucal_equivalentTo(const UCalendar *cal1, const UCalendar *cal2)
Returns TRUE if two UCalendars are equivalent.
Field number indicating whether the HOUR is before or after noon.
UCalendarWeekdayType
Weekday types, as returned by ucal_getDayOfWeekType().
const char * ucal_getType(const UCalendar *cal, UErrorCode *status)
Get the resource keyword value string designating the calendar type for the UCalendar.
Get the previous transition before the current date, i.e.
Short daylight savings display name.
Field number indicating the second within the minute.
One more than the highest normal UCalendarDateFields value.
An ambiguous wall time to be interpreted as the earliest.
#define U_DEFINE_LOCAL_OPEN_POINTER(LocalPointerClassName, Type, closeFunction)
UCalendarAttribute
Types of UCalendar attributes.
Despite the name, UCAL_TRADITIONAL designates the locale's default calendar, which may be the Gregori...
void ucal_setTimeZone(UCalendar *cal, const UChar *zoneID, int32_t len, UErrorCode *status)
Set the TimeZone used by a UCalendar.
int32_t ucal_getCanonicalTimeZoneID(const UChar *id, int32_t len, UChar *result, int32_t resultCapacity, UBool *isSystemID, UErrorCode *status)
Returns the canonical system timezone ID or the normalized custom time zone ID for the given time zon...
UEnumeration * ucal_openTimeZoneIDEnumeration(USystemTimeZoneType zoneType, const char *region, const int32_t *rawOffset, UErrorCode *ec)
Create an enumeration over system time zone IDs with the given filter conditions.
The behavior for handling wall time repeating multiple times at negative time zone offset transitions...
UCalendarDaysOfWeek
Useful constant for days of week.
Field number indicating the hour of the morning or afternoon.
int32_t ucal_getTimeZoneID(const UCalendar *cal, UChar *result, int32_t resultLength, UErrorCode *status)
Get the ID of the UCalendar's time zone.
int32_t ucal_countAvailable(void)
Determine how many locales have calendars available.
C++ API: "Smart pointers" for use with and in ICU4C C++ code.
void * UCalendar
A calendar.
UCalendar * ucal_open(const UChar *zoneID, int32_t len, const char *locale, UCalendarType type, UErrorCode *status)
Open a UCalendar.
Daylight savings display name.
UCalendarDisplayNameType
Possible formats for a UCalendar's display name.
int32_t ucal_getFieldDifference(UCalendar *cal, UDate target, UCalendarDateFields field, UErrorCode *status)
Return the difference between the target time and the time this calendar object is currently set to.
double UDate
Date and Time data type.
Field number indicating the week number within the current year.
UEnumeration * ucal_getKeywordValuesForLocale(const char *key, const char *locale, UBool commonlyUsed, UErrorCode *status)
Given a key and a locale, returns an array of string values in a preferred order that would make a di...
A better name for UCAL_TRADITIONAL.
#define U_DRAFT
This is used to declare a function as a draft public ICU C API
UCalendarMonths
Possible months in a UCalendar.
#define U_STABLE
This is used to declare a function as a stable public ICU C API.
The behavior for handling skipped wall time at positive time zone offset transitions.
Field number indicating the hour of the day.
void ucal_clear(UCalendar *calendar)
Clear all fields in a UCalendar.
void ucal_clearField(UCalendar *cal, UCalendarDateFields field)
Clear a field in a UCalendar.
UCalendarDateFields
Possible fields in a UCalendar.
UEnumeration * ucal_openCountryTimeZones(const char *country, UErrorCode *ec)
Create an enumeration over all time zones associated with the given country.
Field number indicating the day of the month.
UCalendarType
Possible types of UCalendars.
Ranges from 0 to 23:59:59.999 (regardless of DST).
int32_t ucal_getLimit(const UCalendar *cal, UCalendarDateFields field, UCalendarLimitType type, UErrorCode *status)
Determine a limit for a field in a UCalendar.
struct UEnumeration UEnumeration
structure representing an enumeration object instance
An ambiguous wall time to be interpreted as the next valid wall time.
Field number indicating the era, e.g., AD or BC in the Gregorian (Julian) calendar.
UEnumeration * ucal_openTimeZones(UErrorCode *ec)
Create an enumeration over all time zones.
Designates a full weekday (no part of the day is included in the weekend).
Value of the UCAL_MONTH field indicating the thirteenth month of the year.
Get the previous transition on or before the current date, i.e.
Field number indicating the localized day of week.
USystemTimeZoneType
System time zone type constants used by filtering zones in ucal_openTimeZoneIDEnumeration.
Get the next transition after the current date, i.e.
UBool ucal_getTimeZoneTransitionDate(const UCalendar *cal, UTimeZoneTransitionType type, UDate *transition, UErrorCode *status)
Get the UDate for the next/previous time zone transition relative to the calendar's current date,...
C API: String Enumeration.