JapaneseLunisolarCalendar Class

Definition

Represents time in divisions, such as months, days, and years. Years are calculated as for the Japanese calendar, while days and months are calculated using the lunisolar calendar.

public ref class JapaneseLunisolarCalendar : System::Globalization::EastAsianLunisolarCalendar
public class JapaneseLunisolarCalendar : System.Globalization.EastAsianLunisolarCalendar
[System.Serializable]
public class JapaneseLunisolarCalendar : System.Globalization.EastAsianLunisolarCalendar
type JapaneseLunisolarCalendar = class
    inherit EastAsianLunisolarCalendar
[<System.Serializable>]
type JapaneseLunisolarCalendar = class
    inherit EastAsianLunisolarCalendar
Public Class JapaneseLunisolarCalendar
Inherits EastAsianLunisolarCalendar
Inheritance
JapaneseLunisolarCalendar
Attributes

Remarks

The JapaneseLunisolarCalendar class is derived from the EastAsianLunisolarCalendar class, which represents the lunisolar calendar. The EastAsianLunisolarCalendar class supports the sexagenary year cycle (which repeats every 60 years) in addition to solar years and lunar months. Each solar year in the calendar is associated with a Sexagenary Year, a Celestial Stem, and a Terrestrial Branch, and these calendars can have leap months after any month of the year. The GetMonth method returns a number between 1 and 13 that indicates the month associated with a specified date. If there is a leap month between the eighth and ninth months of the year, the GetMonth method returns 8 for the eighth month, 9 for the leap eighth month, and 10 for the ninth month.

Note

For information about using the JapaneseLunisolarCalendar class and the other calendar classes in the .NET Class Library, see Working with Calendars.

The JapaneseLuniSolarCalendar class recognizes one era for every emperor's reign. For example, the two most recent eras are the Heisei era, beginning in the Gregorian calendar year 1989, and the Reiwa era, beginning in the Gregorian calendar year 2019. The era name is typically displayed before the year. For example, the Gregorian calendar year 2001 is the Japanese calendar year Heisei 13. Note that the first year of an era is called "Gannen." Therefore, the Gregorian calendar year 1989 was the Japanese calendar year Heisei Gannen.

Important

Eras in the Japanese calendars are based on the emperor's reign and are therefore expected to change. For example, May 1, 2019 marked the beginning of the Reiwa era in the JapaneseCalendar and JapaneseLunisolarCalendar. Such a change of era affects all applications that use these calendars. For more information and to determine whether your applications are affected, see Handling a new era in the Japanese calendar in .NET. For information on testing your applications on Windows systems to ensure their readiness for the era change, see Prepare your application for the Japanese era change. For features in .NET that support calendars with multiple eras and for best practices when working with calendars that support multiple eras, see Working with eras.

Unlike the JapaneseCalendar class, the JapaneseLunisolarCalendar class does not support dates in the range of the Meiji and Taisho eras.

This class assigns numbers to the eras as follows:

GetEra value Era Name Era Abbreviation Gregorian Dates
5 令和 (Reiwa) 令和 (R, r) May 1, 2019 to present
4 平成 (Heisei) 平 (H, h) January 8, 1989 to April 30, 2019
3 昭和 (Showa) 昭 (S, s) December 25, 1926 to January 7, 1989
2 大正 (Taisho) 大 (T, t) July 30, 1912 to December 24, 1926
1 明治 (Meiji) 明 (M, m) September 8, 1868 to July 29, 1912

Currently, the JapaneseLunisolarCalendar is not used by any of the cultures supported by the CultureInfo class. Therefore, this class can be used only to calculate dates in the Japanese lunisolar calendar. It cannot be used as the default calendar for any culture supported by the CultureInfo class.

Each CultureInfo object supports a set of calendars. The CultureInfo.Calendar property returns the default calendar for the culture, and the CultureInfo.OptionalCalendars property returns an array containing all the calendars supported by the culture. You can change the default calendar to any one of the optional calendars supported by a CultureInfo instance. To do this, set the Calendar property of the DateTimeFormatInfo object returned by the CultureInfo.DateTimeFormat property to the new Calendar.

Constructors

JapaneseLunisolarCalendar()

Initializes a new instance of the JapaneseLunisolarCalendar class.

Fields

CurrentEra

Represents the current era of the current calendar. The value of this field is 0.

(Inherited from Calendar)
JapaneseEra

Specifies the current era.

Properties

AlgorithmType

Gets a value indicating whether the current calendar is solar-based, lunar-based, or a combination of both.

(Inherited from EastAsianLunisolarCalendar)
DaysInYearBeforeMinSupportedYear

Gets the number of days in the year that precedes the year that is specified by the MinSupportedDateTime property.

DaysInYearBeforeMinSupportedYear

Gets the number of days in the year that precedes the year that is specified by the MinSupportedDateTime property.

(Inherited from Calendar)
Eras

Gets the eras that are relevant to the JapaneseLunisolarCalendar object.

IsReadOnly

Gets a value indicating whether this Calendar object is read-only.

(Inherited from Calendar)
MaxSupportedDateTime

Gets the maximum date and time supported by the JapaneseLunisolarCalendar class.

MinSupportedDateTime

Gets the minimum date and time supported by the JapaneseLunisolarCalendar class.

TwoDigitYearMax

Gets or sets the last year of a 100-year range that can be represented by a 2-digit year.

(Inherited from EastAsianLunisolarCalendar)

Methods

AddDays(DateTime, Int32)

Returns a DateTime that is the specified number of days away from the specified DateTime.

(Inherited from Calendar)
AddHours(DateTime, Int32)

Returns a DateTime that is the specified number of hours away from the specified DateTime.

(Inherited from Calendar)
AddMilliseconds(DateTime, Double)

Returns a DateTime that is the specified number of milliseconds away from the specified DateTime.

(Inherited from Calendar)
AddMinutes(DateTime, Int32)

Returns a DateTime that is the specified number of minutes away from the specified DateTime.

(Inherited from Calendar)
AddMonths(DateTime, Int32)

Calculates the date that is the specified number of months away from the specified date.

(Inherited from EastAsianLunisolarCalendar)
AddSeconds(DateTime, Int32)

Returns a DateTime that is the specified number of seconds away from the specified DateTime.

(Inherited from Calendar)
AddWeeks(DateTime, Int32)

Returns a DateTime that is the specified number of weeks away from the specified DateTime.

(Inherited from Calendar)
AddYears(DateTime, Int32)

Calculates the date that is the specified number of years away from the specified date.

(Inherited from EastAsianLunisolarCalendar)
Clone()

Creates a new object that is a copy of the current Calendar object.

(Inherited from Calendar)
Equals(Object)

Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetCelestialStem(Int32)

Calculates the celestial stem of the specified year in the sexagenary (60-year) cycle.

(Inherited from EastAsianLunisolarCalendar)
GetDayOfMonth(DateTime)

Calculates the day of the month in the specified date.

(Inherited from EastAsianLunisolarCalendar)
GetDayOfWeek(DateTime)

Calculates the day of the week in the specified date.

(Inherited from EastAsianLunisolarCalendar)
GetDayOfYear(DateTime)

Calculates the day of the year in the specified date.

(Inherited from EastAsianLunisolarCalendar)
GetDaysInMonth(Int32, Int32)

Returns the number of days in the specified month and year of the current era.

(Inherited from Calendar)
GetDaysInMonth(Int32, Int32, Int32)

Calculates the number of days in the specified month of the specified year and era.

(Inherited from EastAsianLunisolarCalendar)
GetDaysInYear(Int32)

Returns the number of days in the specified year of the current era.

(Inherited from Calendar)
GetDaysInYear(Int32, Int32)

Calculates the number of days in the specified year and era.

(Inherited from EastAsianLunisolarCalendar)
GetEra(DateTime)

Retrieves the era that corresponds to the specified DateTime.

GetHashCode()

Serves as the default hash function.

(Inherited from Object)
GetHour(DateTime)

Returns the hours value in the specified DateTime.

(Inherited from Calendar)
GetLeapMonth(Int32)

Calculates the leap month for a specified year.

(Inherited from Calendar)
GetLeapMonth(Int32, Int32)

Calculates the leap month for the specified year and era.

(Inherited from EastAsianLunisolarCalendar)
GetMilliseconds(DateTime)

Returns the milliseconds value in the specified DateTime.

(Inherited from Calendar)
GetMinute(DateTime)

Returns the minutes value in the specified DateTime.

(Inherited from Calendar)
GetMonth(DateTime)

Returns the month in the specified date.

(Inherited from EastAsianLunisolarCalendar)
GetMonthsInYear(Int32)

Returns the number of months in the specified year in the current era.

(Inherited from Calendar)
GetMonthsInYear(Int32, Int32)

Calculates the number of months in the specified year and era.

(Inherited from EastAsianLunisolarCalendar)
GetSecond(DateTime)

Returns the seconds value in the specified DateTime.

(Inherited from Calendar)
GetSexagenaryYear(DateTime)

Calculates the year in the sexagenary (60-year) cycle that corresponds to the specified date.

(Inherited from EastAsianLunisolarCalendar)
GetTerrestrialBranch(Int32)

Calculates the terrestrial branch of the specified year in the sexagenary (60-year) cycle.

(Inherited from EastAsianLunisolarCalendar)
GetType()

Gets the Type of the current instance.

(Inherited from Object)
GetWeekOfYear(DateTime, CalendarWeekRule, DayOfWeek)

Returns the week of the year that includes the date in the specified DateTime value.

(Inherited from Calendar)
GetYear(DateTime)

Returns the year in the specified date.

(Inherited from EastAsianLunisolarCalendar)
IsLeapDay(Int32, Int32, Int32)

Determines whether the specified date in the current era is a leap day.

(Inherited from Calendar)
IsLeapDay(Int32, Int32, Int32, Int32)

Determines whether the specified date in the specified era is a leap day.

(Inherited from EastAsianLunisolarCalendar)
IsLeapMonth(Int32, Int32)

Determines whether the specified month in the specified year in the current era is a leap month.

(Inherited from Calendar)
IsLeapMonth(Int32, Int32, Int32)

Determines whether the specified month in the specified year and era is a leap month.

(Inherited from EastAsianLunisolarCalendar)
IsLeapYear(Int32)

Determines whether the specified year in the current era is a leap year.

(Inherited from Calendar)
IsLeapYear(Int32, Int32)

Determines whether the specified year in the specified era is a leap year.

(Inherited from EastAsianLunisolarCalendar)
MemberwiseClone()

Creates a shallow copy of the current Object.

(Inherited from Object)
ToDateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32)

Returns a DateTime that is set to the specified date and time in the current era.

(Inherited from Calendar)
ToDateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Int32)

Returns a DateTime that is set to the specified date, time, and era.

(Inherited from EastAsianLunisolarCalendar)
ToFourDigitYear(Int32)

Converts the specified year to a four-digit year.

(Inherited from EastAsianLunisolarCalendar)
ToString()

Returns a string that represents the current object.

(Inherited from Object)

Applies to

See also