JapaneseCalendar 类

定义

表示日本历。

public ref class JapaneseCalendar : System::Globalization::Calendar
public class JapaneseCalendar : System.Globalization.Calendar
[System.Serializable]
public class JapaneseCalendar : System.Globalization.Calendar
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public class JapaneseCalendar : System.Globalization.Calendar
type JapaneseCalendar = class
    inherit Calendar
[<System.Serializable>]
type JapaneseCalendar = class
    inherit Calendar
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type JapaneseCalendar = class
    inherit Calendar
Public Class JapaneseCalendar
Inherits Calendar
继承
JapaneseCalendar
属性

注解

日本日历(也称为 Wareki 日历)的工作方式与公历完全相同,但年份和时代不同。

备注

有关在 .NET 中使用 JapaneseCalendar 类和其他日历类的信息,请参阅 “使用日历”。

日本历承认每个皇帝统治的一个时代。 最近的两个时代是海西时代,从1989年公历年开始,从2019年公历年开始的雷瓦时代。 纪元名称通常显示在年份之前。 例如,2001 年公历年是日本日历年 Heisei 13。 请注意,时代的第一年被称为“甘宁”。 因此,1989年公历年是日本历年海西甘宁。 默认情况下,使用指定日期和时间格式字符串(如“D”、“F”和“Y”)的格式设置操作,输出 Gannen 而不是结果字符串中的“1”。

重要

日本历法中的年号是根据天皇统治来命名的,因此预计会发生变化。 例如,2019 年 5 月 1 日在 JapaneseCalendarJapaneseLunisolarCalendar 中标志着令和年号的开始。 这种年号的变化会影响使用这些日历的所有应用程序。 有关详细信息以及如何确定应用程序是否受影响,请参阅在 .net 中的日式日历中处理新时代。 若要了解如何在 Windows 系统上测试应用程序以确保其应用程序更改的就绪性,请参阅准备应用程序以进行日本时代更改。 对于 .NET 中支持多个纪元的日历的功能,以及在处理支持多个纪元的日历时的最佳做法,请参阅使用 纪元

此类将数字分配给时代,如下所示:

GetEra 值 纪元名称 纪元缩写 公历日期
5 令和 (Reiwa) 令和 (R、 r) 2019 年 5 月 1 日至今
4 平成 (海西) 平 (H、h) 1989 年 1 月 8 日至 2019 年 4 月 30 日
3 昭和 (Showa) 昭 (S, s) 1926年12月25日至1989年1月7日
2 大正 (大正) 大正 大 (T,t) 1912 年 7 月 30 日至 1926 年 12 月 24 日
1 明治 (梅吉) 明 (M, m) 1868 年 9 月 8 日至 1912 年 7 月 29 日

此类处理从 1868 年 9 月 8 日) 年 9 月 8 日 (年 9 月 8 日开始的日期。 虽然日本历从农历改为日历,但日本历在公历 (1873年的1873年) ,但这一实现仅基于太阳历。

日本日历中的 Leap 年对应于公历中的同一跃年。 公历中的一个跃年被定义为公历的公历年,该年被四个公历均匀地除以 100。 然而,被400分位的公历年是飞跃年。 普通年份有 365 天,跃年有 366 天。

日本日历有 12 个月,每个月有 28 到 31 天:

GetMonth 值 Month 英语 常见年份中的天数 飞跃年份中的天数
1 1 月 (Ichigatsu) 1 月 31 31
2 2 月 (Nigatsu) February 28 29
3 3月 (桑加松) 3 月 31 31
4 4 月 (Shigatsu) April 30 30
5 5 月 (Gogatsu) 五月 31 31
6 6 月 (Rokugatsu) June 30 30
7 7 月 (Shichigatsu) 7 月 31 31
8 8 月 (哈奇加松) 8 月 31 31
9 9 月 (Kugatsu) 9 月 30 30
10 10 月 (Juugatsu) 10 月 31 31
11 11 月 (朱一加松) 11 月 30 30
12 12 月 (Juunigatsu) 12 月 31 31

Nigatsu 相当于 2 月的公历月,在跨年有 29 天,在普通年份有 28 天。

2001 年 1 月 1 日 A.D. 在公历中,相当于日历第一天一郎一世13日。

JapaneseCalendar如果这是日本文化的当前日历,DateTime.Parse则识别年度前的纪元缩写。 缩写是单字符不区分大小写的拉丁字母缩写或单字符汉字缩写。 DateTime.Parse 还承认“1”或甘宁 (元年) 是时代的第一年。

每个 CultureInfo 对象都支持一组日历。 该 Calendar 属性返回区域性的默认日历, OptionalCalendars 该属性返回包含区域性支持的所有日历的数组。 若要更改 a CultureInfo使用的日历,请将 DateTimeFormatInfo.Calendar 属性设置为新 Calendar日历。

构造函数

JapaneseCalendar()

初始化 JapaneseCalendar 类的新实例。

字段

CurrentEra

表示当前日历的当前纪元。 字段的值为 0。

(继承自 Calendar)

属性

AlgorithmType

获取一个值,该值指示当前日历是阳历、阴历还是二者的组合。

AlgorithmType

获取一个值,该值指示当前日历是阳历、阴历还是二者的组合。

(继承自 Calendar)
DaysInYearBeforeMinSupportedYear

获取 MinSupportedDateTime 属性指定的年份之前的年中天数。

(继承自 Calendar)
Eras

获取 JapaneseCalendar 中的纪元列表。

IsReadOnly

获取一个值,该值指示此 Calendar 对象是否为只读。

(继承自 Calendar)
MaxSupportedDateTime

获取当前 JapaneseCalendar 对象支持的最晚日期和时间。

MaxSupportedDateTime

获取此 Calendar 对象支持的最晚日期和时间。

(继承自 Calendar)
MinSupportedDateTime

获取当前 JapaneseCalendar 对象支持的最早日期和时间。

MinSupportedDateTime

获取此 Calendar 对象支持的最早日期和时间。

(继承自 Calendar)
TwoDigitYearMax

获取或设置可以用两位数年份表示的 100 年范围内的最后一年。

方法

AddDays(DateTime, Int32)

返回与指定 DateTime 相距指定天数的 DateTime

(继承自 Calendar)
AddHours(DateTime, Int32)

返回与指定 DateTime 相距指定小时数的 DateTime

(继承自 Calendar)
AddMilliseconds(DateTime, Double)

返回与指定 DateTime 相距指定毫秒数的 DateTime

(继承自 Calendar)
AddMinutes(DateTime, Int32)

返回与指定 DateTime 相距指定分钟数的 DateTime

(继承自 Calendar)
AddMonths(DateTime, Int32)

返回与指定 DateTime 相距指定月数的 DateTime

AddSeconds(DateTime, Int32)

返回与指定 DateTime 相距指定秒数的 DateTime

(继承自 Calendar)
AddWeeks(DateTime, Int32)

返回与指定 DateTime 相距指定周数的 DateTime

(继承自 Calendar)
AddYears(DateTime, Int32)

返回与指定 DateTime 相距指定年数的 DateTime

Clone()

创建表示当前 Calendar 对象副本的新对象。

(继承自 Calendar)
Equals(Object)

确定指定对象是否等于当前对象。

(继承自 Object)
GetDayOfMonth(DateTime)

返回指定 DateTime 中的月中日期。

GetDayOfWeek(DateTime)

返回指定 DateTime 中的周中日期。

GetDayOfYear(DateTime)

返回指定 DateTime 中的日期是该年中的第几天。

GetDaysInMonth(Int32, Int32)

返回当前纪元的指定月份和年份中的天数。

(继承自 Calendar)
GetDaysInMonth(Int32, Int32, Int32)

返回指定纪元中指定年份的指定月份中的天数。

GetDaysInYear(Int32)

返回当前纪元中指定年份的天数。

(继承自 Calendar)
GetDaysInYear(Int32, Int32)

返回指定纪元中指定年份的天数。

GetEra(DateTime)

返回指定 DateTime 中的纪元。

GetHashCode()

作为默认哈希函数。

(继承自 Object)
GetHour(DateTime)

返回指定 DateTime 中的小时值。

(继承自 Calendar)
GetLeapMonth(Int32)

计算指定年份的闰月。

(继承自 Calendar)
GetLeapMonth(Int32, Int32)

计算指定纪元年份的闰月。

GetLeapMonth(Int32, Int32)

计算指定纪元年份的闰月。

(继承自 Calendar)
GetMilliseconds(DateTime)

返回指定 DateTime 中的毫秒值。

(继承自 Calendar)
GetMinute(DateTime)

返回指定 DateTime 中的分钟值。

(继承自 Calendar)
GetMonth(DateTime)

返回指定 DateTime 中的月份。

GetMonthsInYear(Int32)

返回当前纪元中指定年份的月数。

(继承自 Calendar)
GetMonthsInYear(Int32, Int32)

返回指定纪元中指定年份的月数。

GetSecond(DateTime)

返回指定 DateTime 中的秒值。

(继承自 Calendar)
GetType()

获取当前实例的 Type

(继承自 Object)
GetWeekOfYear(DateTime, CalendarWeekRule, DayOfWeek)

返回一年中包含指定 DateTime 值中的日期的那个星期。

GetWeekOfYear(DateTime, CalendarWeekRule, DayOfWeek)

返回一年中包含指定 DateTime 值中的日期的那个星期。

(继承自 Calendar)
GetYear(DateTime)

返回指定 DateTime 中的年份。

IsLeapDay(Int32, Int32, Int32)

确定当前纪元中的指定日期是否为闰日。

(继承自 Calendar)
IsLeapDay(Int32, Int32, Int32, Int32)

确定指定纪元中的指定日期是否为闰日。

IsLeapMonth(Int32, Int32)

确定当前纪元中指定年份的指定月份是否为闰月。

(继承自 Calendar)
IsLeapMonth(Int32, Int32, Int32)

确定指定纪元中指定年份的指定月份是否为闰月。

IsLeapYear(Int32)

确定当前纪元中的指定年份是否为闰年。

(继承自 Calendar)
IsLeapYear(Int32, Int32)

确定指定纪元中的指定年份是否为闰年。

MemberwiseClone()

创建当前 Object 的浅表副本。

(继承自 Object)
ToDateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32)

返回设置为当前纪元中指定日期和时间的 DateTime

(继承自 Calendar)
ToDateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Int32)

返回设置为指定纪元中指定日期和时间的 DateTime

ToFourDigitYear(Int32)

使用 TwoDigitYearMax 属性将指定的年份转换为四位数年份,以确定相应的纪元。

ToString()

返回表示当前对象的字符串。

(继承自 Object)

适用于

另请参阅