IndianCalendar is a subclass of GregorianCalendar
that numbers years since the birth of the Buddha. This is the civil calendar
which is accepted by government of India as Indian National Calendar.
The two calendars most widely used in India today are the Vikrama calendar
followed in North India and the Shalivahana or Saka calendar which is followed
in South India and Maharashtra.
A variant of the Shalivahana Calendar was reformed and standardized as the
Indian National calendar in 1957.
Some details of Indian National Calendar (to be implemented) : The Months Month Length Start date (Gregorian) ================================================= 1 Chaitra 30/31 March 22* 2 Vaisakha 31 April 21 3 Jyaistha 31 May 22 4 Asadha 31 June 22 5 Sravana 31 July 23 6 Bhadra 31 August 23 7 Asvina 30 September 23 8 Kartika 30 October 23 9 Agrahayana 30 November 22 10 Pausa 30 December 22 11 Magha 30 January 21 12 Phalguna 30 February 20 In leap years, Chaitra has 31 days and starts on March 21 instead. The leap years of Gregorian calendar and Indian National Calendar are in synchornization. So When its a leap year in Gregorian calendar then Chaitra has 31 days. The Years Years are counted in the Saka Era, which starts its year 0 in 78AD (by gregorian calendar). So for eg. 9th June 2006 by Gregorian Calendar, is same as 19th of Jyaistha in 1928 of Saka era by Indian National Calendar.
The Indian Calendar has only one allowable era: Saka Era. If the
calendar is not in lenient mode (see setLenient), dates before
1/1/1 Saka Era are rejected with an IllegalArgumentException.
This class should not be subclassed.
IndianCalendar usually should be instantiated using
com. passing in a ULocale
with the tag "@calendar=Indian".
com.ibm.icu.util.Calendar , com.ibm.icu.util.GregorianCalendar
| Modifier and Type | Field and Description |
|---|---|
| public static final int | AGRAHAYANA
Constant for Agrahayana, the 9th month of the Indian year. |
| public static final int | ASADHA
Constant for Asadha, the 4th month of the Indian year. |
| public static final int | ASVINA
Constant for Asvina, the 7th month of the Indian year. |
| public static final int | BHADRA
Constant for Bhadra, the 6th month of the Indian year. |
| public static final int | CHAITRA
Constant for Chaitra, the 1st month of the Indian year. |
| public static final int | IE
Constant for the Indian Era. |
| private static final int | |
| private static final int | |
| public static final int | JYAISTHA
Constant for Jyaistha, the 3rd month of the Indian year. |
| public static final int | KARTIKA
Constant for Kartika, the 8th month of the Indian year. |
| private static final int[][] | |
| public static final int | MAGHA
Constant for Magha, the 11th month of the Indian year. |
| public static final int | PAUSA
Constant for Pausa, the 10th month of the Indian year. |
| public static final int | PHALGUNA
Constant for Phalguna, the 12th month of the Indian year. |
| private static final long | |
| public static final int | SRAVANA
Constant for Sravana, the 5th month of the Indian year. |
| public static final int | VAISAKHA
Constant for Vaisakha, the 2nd month of the Indian year. |
| Access | Constructor and Description |
|---|---|
| public | IndianCalendar()
Constructs a |
| public | IndianCalendar(TimeZone
the given time zone. zone)Constructs a |
| public | IndianCalendar(Locale
the given locale. aLocale)Constructs a |
| public | IndianCalendar(ULocale
the given ulocale. locale)Constructs a |
| public | IndianCalendar(TimeZone
the given time zone. zone, Locale the given locale. aLocale)Constructs a |
| public | IndianCalendar(TimeZone
the given time zone. zone, ULocale the given ulocale. locale)Constructs a |
| public | IndianCalendar(Date
The date to which the new calendar is set. date)Constructs a |
| public | IndianCalendar(int
The value used to set the calendar's year, int YEAR time field.The value used to set the calendar's month, int MONTH time field.
The value is 0-based. e.g., 0 for January.The value used to set the calendar's date)DATE time field.Constructs a |
| public | IndianCalendar(int
The value used to set the calendar's year, int YEAR time field.The value used to set the calendar's month, int MONTH time field.
The value is 0-based. e.g., 0 for January.The value used to set the calendar's date, int DATE time field.The value used to set the calendar's hour, int HOUR_OF_DAY time field.The value used to set the calendar's minute, int MINUTE time field.The value used to set the calendar's second)SECOND time field.Constructs a IndianCalendar with the given date
and time set for the default time zone with the default |
| Modifier and Type | Method and Description |
|---|---|
| public String | |
| private double | |
| protected void | handleComputeFields(int julianDay)
Subclasses may override this method to compute several fields
specific to each calendar system.
|
| protected int | handleComputeMonthStart(int
the extended year year, int the zero-based month, or 0 if useMonth is false month, boolean if false, compute the day before the first day of
the given year, otherwise, compute the day before the first day of
the given month useMonth)Implements abstract com. |
| protected int | handleGetExtendedYear()
Implements abstract com. |
| protected int | handleGetLimit(int
one of the above field numbers field, int one of limitType)MINIMUM, GREATEST_MINIMUM,
LEAST_MAXIMUM, or MAXIMUMImplements abstract com. |
| protected int | handleGetMonthLength(int extendedYear, int month)
Returns the number of days in the given month of the given extended
year of this calendar system.
|
| protected int | handleGetYearLength(int extendedYear)
Returns the number of days in the given extended year of this
calendar system.
|
| private double |
| AGRAHAYANA | back to summary |
|---|---|
| public static final int AGRAHAYANA Constant for Agrahayana, the 9th month of the Indian year.
| |
| ASADHA | back to summary |
|---|---|
| public static final int ASADHA Constant for Asadha, the 4th month of the Indian year.
| |
| ASVINA | back to summary |
|---|---|
| public static final int ASVINA Constant for Asvina, the 7th month of the Indian year.
| |
| BHADRA | back to summary |
|---|---|
| public static final int BHADRA Constant for Bhadra, the 6th month of the Indian year.
| |
| CHAITRA | back to summary |
|---|---|
| public static final int CHAITRA Constant for Chaitra, the 1st month of the Indian year.
| |
| IE | back to summary |
|---|---|
| public static final int IE Constant for the Indian Era. This is the only allowable
| |
| INDIAN_ERA_START | back to summary |
|---|---|
| private static final int INDIAN_ERA_START | |
| INDIAN_YEAR_START | back to summary |
|---|---|
| private static final int INDIAN_YEAR_START | |
| JYAISTHA | back to summary |
|---|---|
| public static final int JYAISTHA Constant for Jyaistha, the 3rd month of the Indian year.
| |
| KARTIKA | back to summary |
|---|---|
| public static final int KARTIKA Constant for Kartika, the 8th month of the Indian year.
| |
| LIMITS | back to summary |
|---|---|
| private static final int[][] LIMITS | |
| MAGHA | back to summary |
|---|---|
| public static final int MAGHA Constant for Magha, the 11th month of the Indian year.
| |
| PAUSA | back to summary |
|---|---|
| public static final int PAUSA Constant for Pausa, the 10th month of the Indian year.
| |
| PHALGUNA | back to summary |
|---|---|
| public static final int PHALGUNA Constant for Phalguna, the 12th month of the Indian year.
| |
| serialVersionUID | back to summary |
|---|---|
| private static final long serialVersionUID | |
| SRAVANA | back to summary |
|---|---|
| public static final int SRAVANA Constant for Sravana, the 5th month of the Indian year.
| |
| VAISAKHA | back to summary |
|---|---|
| public static final int VAISAKHA Constant for Vaisakha, the 2nd month of the Indian year.
| |
| IndianCalendar | back to summary |
|---|---|
| public IndianCalendar() Constructs a
| |
| IndianCalendar | back to summary |
|---|---|
| public IndianCalendar(TimeZone zone) Constructs a
| |
| IndianCalendar | back to summary |
|---|---|
| public IndianCalendar(Locale aLocale) Constructs a | |
| IndianCalendar | back to summary |
|---|---|
| public IndianCalendar(ULocale locale) Constructs a | |
| IndianCalendar | back to summary |
|---|---|
| public IndianCalendar(TimeZone zone, Locale aLocale) Constructs a | |
| IndianCalendar | back to summary |
|---|---|
| public IndianCalendar(TimeZone zone, ULocale locale) Constructs a | |
| IndianCalendar | back to summary |
|---|---|
| public IndianCalendar(Date date) Constructs a
| |
| IndianCalendar | back to summary |
|---|---|
| public IndianCalendar(int year, int month, int date) Constructs a
| |
| IndianCalendar | back to summary |
|---|---|
| public IndianCalendar(int year, int month, int date, int hour, int minute, int second) Constructs a IndianCalendar with the given date
and time set for the default time zone with the default
| |
| getType | back to summary |
|---|---|
| public String getType() Overrides com. Doc from com. ICU See type="old type name" for the calendar attribute of locale IDs at http://www.unicode.org/reports/tr35/#Key_Type_Definitions | |
| gregorianToJD | back to summary |
|---|---|
| private double gregorianToJD(int year, int month, int date) | |
| handleComputeFields | back to summary |
|---|---|
| protected void handleComputeFields(int julianDay) Overrides com. Doc from com. Subclasses may override this method to compute several fields specific to each calendar system. These are:
In addition, subclasses should compute any subclass-specific fields, that is, fields from BASE_FIELD_COUNT to getFieldCount() - 1. The default implementation in
| |
| handleComputeMonthStart | back to summary |
|---|---|
| protected int handleComputeMonthStart(int year, int month, boolean useMonth) Implements abstract com. Doc from com. Returns the Julian day number of day before the first day of the given month in the given extended year. Subclasses should override this method to implement their calendar system.
| |
| handleGetExtendedYear | back to summary |
|---|---|
| protected int handleGetExtendedYear() Implements abstract com. Doc from com. Returns the extended year defined by the current fields. This will use the EXTENDED_YEAR field or the YEAR and supra-year fields (such as ERA) specific to the calendar system, depending on which set of fields is newer.
| |
| handleGetLimit | back to summary |
|---|---|
| protected int handleGetLimit(int field, int limitType) Implements abstract com. Doc from com. Subclass API for defining limits of different types. Subclasses must implement this method to return limits for the following fields: ERA YEAR MONTH WEEK_OF_YEAR WEEK_OF_MONTH DAY_OF_MONTH DAY_OF_YEAR DAY_OF_WEEK_IN_MONTH YEAR_WOY EXTENDED_YEAR
| |
| handleGetMonthLength | back to summary |
|---|---|
| protected int handleGetMonthLength(int extendedYear, int month) Overrides com. Doc from com. Returns the number of days in the given month of the given extended year of this calendar system. Subclasses should override this method if they can provide a more correct or more efficient implementation than the default implementation in Calendar.
| |
| handleGetYearLength | back to summary |
|---|---|
| protected int handleGetYearLength(int extendedYear) Overrides com. Doc from com. Returns the number of days in the given extended year of this calendar system. Subclasses should override this method if they can provide a more correct or more efficient implementation than the default implementation in Calendar.
| |
| IndianToJD | back to summary |
|---|---|
| private double IndianToJD(int year, int month, int date) | |