ylbtech-System.Globalization.Calendar.cs |
1、
#region 程序集 mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
// C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.6.1\mscorlib.dll
#endregion
using System.Runtime.InteropServices;
namespace System.Globalization
{
//
// 摘要:
// 表示部门中的时间(如周、月和年)。
[ComVisible(true)]
public abstract class Calendar : ICloneable
{
//
// 摘要:
// 表示当前日历为当前纪元。
public const int CurrentEra = 0;
//
// 摘要:
// 初始化 System.Globalization.Calendar 类的新实例。
protected Calendar();
//
// 摘要:
// 当在派生类中重写,获取当前日历中的纪元列表。
//
// 返回结果:
// 表示当前日历中的纪元的整数数组。
public abstract int[] Eras { get; }
//
// 摘要:
// 获取一个值,该值指示是否此 System.Globalization.Calendar 对象是只读的。
//
// 返回结果:
// true 如果此 System.Globalization.Calendar 对象是只读的; 否则为 false。
[ComVisible(false)]
public bool IsReadOnly { get; }
//
// 摘要:
// 获取一个值,指示当前日历是阳历、 阴历还是二者的组合。
//
// 返回结果:
// System.Globalization.CalendarAlgorithmType 值之一。
[ComVisible(false)]
public virtual CalendarAlgorithmType AlgorithmType { get; }
//
// 摘要:
// 获取最新的日期和时间受此 System.Globalization.Calendar 对象。
//
// 返回结果:
// 最新的日期和时间此日历支持。 默认值为 System.DateTime.MaxValue。
[ComVisible(false)]
public virtual DateTime MaxSupportedDateTime { get; }
//
// 摘要:
// 获取最早支持日期和时间由此 System.Globalization.Calendar 对象。
//
// 返回结果:
// 最早的日期和时间此日历支持。 默认值为 System.DateTime.MinValue。
[ComVisible(false)]
public virtual DateTime MinSupportedDateTime { get; }
//
// 摘要:
// 获取或设置可以用两位数年份表示的 100 年范围内的最后一年。
//
// 返回结果:
// 可以用两位数年份表示的 100 年范围内的最后一年。
//
// 异常:
// T:System.InvalidOperationException:
// 当前 System.Globalization.Calendar 对象是只读的。
public virtual int TwoDigitYearMax { get; set; }
//
// 摘要:
// 获取位于由指定的年份的年度中的天数 System.Globalization.Calendar.MinSupportedDateTime 属性。
//
// 返回结果:
// 前面所指定的年份的年中的天数 System.Globalization.Calendar.MinSupportedDateTime。
protected virtual int DaysInYearBeforeMinSupportedYear { get; }
//
// 摘要:
// 返回指定的只读版本 System.Globalization.Calendar 对象。
//
// 参数:
// calendar:
// 一个 System.Globalization.Calendar 对象。
//
// 返回结果:
// System.Globalization.Calendar 指定对象 calendar 参数,如果 calendar 是只读的。 - 或 - 只读成员副本
// System.Globalization.Calendar 指定对象 calendar, ,如果 calendar 不是只读的。
//
// 异常:
// T:System.ArgumentNullException:
// calendar 为 null。
[ComVisible(false)]
public static Calendar ReadOnly(Calendar calendar);
//
// 摘要:
// 返回 System.DateTime ,它是指定的天数相距指定 System.DateTime。
//
// 参数:
// time:
// System.DateTime 要向其中添加天数。
//
// days:
// 若要添加的天数。
//
// 返回结果:
// System.DateTime 将指定的天数添加到指定时产生 System.DateTime。
//
// 异常:
// T:System.ArgumentException:
// 生成 System.DateTime 超出了该日历的支持范围。
//
// T:System.ArgumentOutOfRangeException:
// days 支持的范围之外,则 System.DateTime 返回值。
public virtual DateTime AddDays(DateTime time, int days);
//
// 摘要:
// 返回 System.DateTime ,它是指定的相距指定的小时数 System.DateTime。
//
// 参数:
// time:
// System.DateTime 要向其中添加小时。
//
// hours:
// 若要添加的小时数。
//
// 返回结果:
// System.DateTime 将指定的小时数添加到指定时产生 System.DateTime。
//
// 异常:
// T:System.ArgumentException:
// 生成 System.DateTime 超出了该日历的支持范围。
//
// T:System.ArgumentOutOfRangeException:
// hours 支持的范围之外,则 System.DateTime 返回值。
public virtual DateTime AddHours(DateTime time, int hours);
//
// 摘要:
// 返回 System.DateTime ,它是指定的相距指定的毫秒数 System.DateTime。
//
// 参数:
// time:
// System.DateTime 要添加毫秒。
//
// milliseconds:
// 要添加的毫秒数。
//
// 返回结果:
// System.DateTime 将指定的毫秒数添加到指定时产生 System.DateTime。
//
// 异常:
// T:System.ArgumentException:
// 生成 System.DateTime 超出了该日历的支持范围。
//
// T:System.ArgumentOutOfRangeException:
// milliseconds 支持的范围之外,则 System.DateTime 返回值。
public virtual DateTime AddMilliseconds(DateTime time, double milliseconds);
//
// 摘要:
// 返回 System.DateTime ,它是指定的相距指定的分钟数 System.DateTime。
//
// 参数:
// time:
// System.DateTime 要向其中添加分钟。
//
// minutes:
// 要添加的分钟数。
//
// 返回结果:
// System.DateTime 将指定的分钟数添加到指定时产生 System.DateTime。
//
// 异常:
// T:System.ArgumentException:
// 生成 System.DateTime 超出了该日历的支持范围。
//
// T:System.ArgumentOutOfRangeException:
// minutes 支持的范围之外,则 System.DateTime 返回值。
public virtual DateTime AddMinutes(DateTime time, int minutes);
//
// 摘要:
// 当在派生类中重写返回 System.DateTime ,它是指定的相距指定的月数 System.DateTime。
//
// 参数:
// time:
// 将向其添加月数的 System.DateTime。
//
// months:
// 要添加的月份数。
//
// 返回结果:
// System.DateTime 将指定的月数添加到指定时产生 System.DateTime。
//
// 异常:
// T:System.ArgumentException:
// 生成 System.DateTime 超出了该日历的支持范围。
//
// T:System.ArgumentOutOfRangeException:
// months 支持的范围之外,则 System.DateTime 返回值。
public abstract DateTime AddMonths(DateTime time, int months);
//
// 摘要:
// 返回 System.DateTime ,它是指定的相距指定的秒数 System.DateTime。
//
// 参数:
// time:
// System.DateTime 要向其中添加秒为单位。
//
// seconds:
// 要添加的秒数。
//
// 返回结果:
// System.DateTime 将指定的秒数添加到指定时产生 System.DateTime。
//
// 异常:
// T:System.ArgumentException:
// 生成 System.DateTime 超出了该日历的支持范围。
//
// T:System.ArgumentOutOfRangeException:
// seconds 支持的范围之外,则 System.DateTime 返回值。
public virtual DateTime AddSeconds(DateTime time, int seconds);
//
// 摘要:
// 返回 System.DateTime ,它是指定的周数相距指定 System.DateTime。
//
// 参数:
// time:
// System.DateTime 要向其中添加几周。
//
// weeks:
// 要添加的星期数。
//
// 返回结果:
// System.DateTime 将指定的周数添加到指定时产生 System.DateTime。
//
// 异常:
// T:System.ArgumentException:
// 生成 System.DateTime 超出了该日历的支持范围。
//
// T:System.ArgumentOutOfRangeException:
// weeks 支持的范围之外,则 System.DateTime 返回值。
public virtual DateTime AddWeeks(DateTime time, int weeks);
//
// 摘要:
// 当在派生类中重写返回 System.DateTime ,它是指定的相距指定的年份数 System.DateTime。
//
// 参数:
// time:
// 将向其添加年数的 System.DateTime。
//
// years:
// 要添加的年数。
//
// 返回结果:
// System.DateTime 将指定的年份数添加到指定时产生 System.DateTime。
//
// 异常:
// T:System.ArgumentException:
// 生成 System.DateTime 超出了该日历的支持范围。
//
// T:System.ArgumentOutOfRangeException:
// years 支持的范围之外,则 System.DateTime 返回值。
public abstract DateTime AddYears(DateTime time, int years);
//
// 摘要:
// 创建一个新对象的当前副本 System.Globalization.Calendar 对象。
//
// 返回结果:
// 新实例 System.Object ,它是当前的成员副本 System.Globalization.Calendar 对象。
[ComVisible(false)]
public virtual object Clone();
//
// 摘要:
// 当在派生类中重写,返回每月天数中指定 System.DateTime。
//
// 参数:
// time:
// 要读取的 System.DateTime。
//
// 返回结果:
// 一个正整数,表示一个月中的第一天 time 参数。
public abstract int GetDayOfMonth(DateTime time);
//
// 摘要:
// 当在派生类中重写返回在指定的日期是星期几 System.DateTime。
//
// 参数:
// time:
// 要读取的 System.DateTime。
//
// 返回结果:
// 一个 System.DayOfWeek 值,该值表示在星期几 time 参数。
public abstract DayOfWeek GetDayOfWeek(DateTime time);
//
// 摘要:
// 当在派生类中重写时返回该年的天中指定 System.DateTime。
//
// 参数:
// time:
// 要读取的 System.DateTime。
//
// 返回结果:
// 一个正整数,中每年的某一天表示 time 参数。
public abstract int GetDayOfYear(DateTime time);
//
// 摘要:
// 返回指定的月份和当前纪元年份中的天数。
//
// 参数:
// year:
// 一个整数,表示的年份。
//
// month:
// 一个正整数,表示的月份。
//
// 返回结果:
// 当前纪元中指定年份中的指定月份的天数。
//
// 异常:
// T:System.ArgumentOutOfRangeException:
// year 超出的日历支持的范围。 - 或 - month 超出的日历支持的范围。
public virtual int GetDaysInMonth(int year, int month);
//
// 摘要:
// 当在派生类中重写,返回指定的月份、 年份和纪元中的天数。
//
// 参数:
// year:
// 一个整数,表示的年份。
//
// month:
// 一个正整数,表示的月份。
//
// era:
// 一个表示纪元的整数。
//
// 返回结果:
// 指定纪元中指定年份中的指定月份的天数。
//
// 异常:
// T:System.ArgumentOutOfRangeException:
// year 超出的日历支持的范围。 - 或 - month 超出的日历支持的范围。 - 或 - era 超出的日历支持的范围。
public abstract int GetDaysInMonth(int year, int month, int era);
//
// 摘要:
// 返回当前纪元的指定年份中的天数。
//
// 参数:
// year:
// 一个整数,表示的年份。
//
// 返回结果:
// 当前纪元中指定年份中的天数。
//
// 异常:
// T:System.ArgumentOutOfRangeException:
// year 超出的日历支持的范围。
public virtual int GetDaysInYear(int year);
//
// 摘要:
// 当在派生类中重写,返回指定的纪元年份中的天数。
//
// 参数:
// year:
// 一个整数,表示的年份。
//
// era:
// 一个表示纪元的整数。
//
// 返回结果:
// 指定纪元中指定年份中的天数。
//
// 异常:
// T:System.ArgumentOutOfRangeException:
// year 超出的日历支持的范围。 - 或 - era 超出的日历支持的范围。
public abstract int GetDaysInYear(int year, int era);
//
// 摘要:
// 当在派生类中重写,会返回纪元中指定 System.DateTime。
//
// 参数:
// time:
// 要读取的 System.DateTime。
//
// 返回结果:
// 一个整数,表示中的纪元 time。
public abstract int GetEra(DateTime time);
//
// 摘要:
// 返回在指定的小时值 System.DateTime。
//
// 参数:
// time:
// 要读取的 System.DateTime。
//
// 返回结果:
// 从 0 到 23 表示的小时数的整数 time。
public virtual int GetHour(DateTime time);
//
// 摘要:
// 计算指定的年和纪元的闰月。
//
// 参数:
// year:
// 每一年。
//
// era:
// 纪元。
//
// 返回结果:
// 一个正整数,表示指定的纪元年份中的闰月。 - 或 - 如果此日历不支持闰月或者为零 year 和 era 参数未指定为闰年。
[ComVisible(false)]
public virtual int GetLeapMonth(int year, int era);
//
// 摘要:
// 计算指定年份的闰月。
//
// 参数:
// year:
// 每一年。
//
// 返回结果:
// 一个正整数,表示中指定年份的闰月。 - 或 - 如果此日历不支持闰月或者为零 year 参数不表示为闰年。
[ComVisible(false)]
public virtual int GetLeapMonth(int year);
//
// 摘要:
// 返回在指定的毫秒值 System.DateTime。
//
// 参数:
// time:
// 要读取的 System.DateTime。
//
// 返回结果:
// 双精度浮点数中从 0 到 999,表示的毫秒 time 参数。
public virtual double GetMilliseconds(DateTime time);
//
// 摘要:
// 返回在指定的分钟值 System.DateTime。
//
// 参数:
// time:
// 要读取的 System.DateTime。
//
// 返回结果:
// 从 0 到 59 的分钟表示的整数 time。
public virtual int GetMinute(DateTime time);
//
// 摘要:
// 当在派生类中重写,以指定返回月份 System.DateTime。
//
// 参数:
// time:
// 要读取的 System.DateTime。
//
// 返回结果:
// 一个正整数,表示中的月份 time。
public abstract int GetMonth(DateTime time);
//
// 摘要:
// 当在派生类中重写,请指定纪元中指定年份中返回月的数。
//
// 参数:
// year:
// 一个整数,表示的年份。
//
// era:
// 一个表示纪元的整数。
//
// 返回结果:
// 指定纪元中指定年份中的月份数。
//
// 异常:
// T:System.ArgumentOutOfRangeException:
// year 超出的日历支持的范围。 - 或 - era 超出的日历支持的范围。
public abstract int GetMonthsInYear(int year, int era);
//
// 摘要:
// 返回当前纪元中指定年份中的月数。
//
// 参数:
// year:
// 一个整数,表示的年份。
//
// 返回结果:
// 当前纪元中指定年份中的月份数。
//
// 异常:
// T:System.ArgumentOutOfRangeException:
// year 超出的日历支持的范围。
public virtual int GetMonthsInYear(int year);
//
// 摘要:
// 返回在指定的秒值 System.DateTime。
//
// 参数:
// time:
// 要读取的 System.DateTime。
//
// 返回结果:
// 从 0 到 59,表示中的秒数的整数 time。
public virtual int GetSecond(DateTime time);
//
// 摘要:
// 返回包括中指定的日期的年份的周 System.DateTime 值。
//
// 参数:
// time:
// 日期和时间值。
//
// rule:
// 一个枚举值,定义一个日历周。
//
// firstDayOfWeek:
// 表示一周的第一天的枚举值。
//
// 返回结果:
// 一个正整数,表示包含中的日期的年份的周 time 参数。
//
// 异常:
// T:System.ArgumentOutOfRangeException:
// time 早于 System.Globalization.Calendar.MinSupportedDateTime 或晚于 System.Globalization.Calendar.MaxSupportedDateTime。
// - 或 - firstDayOfWeek 不是有效的 System.DayOfWeek 值。 - 或 - rule 不是有效的 System.Globalization.CalendarWeekRule
// 值。
public virtual int GetWeekOfYear(DateTime time, CalendarWeekRule rule, DayOfWeek firstDayOfWeek);
//
// 摘要:
// 当在派生类中重写返回年份中指定 System.DateTime。
//
// 参数:
// time:
// 要读取的 System.DateTime。
//
// 返回结果:
// 一个整数,表示该年中的 time。
public abstract int GetYear(DateTime time);
//
// 摘要:
// 当在派生类中重写,确定指定纪元中指定的日期是否为闰日。
//
// 参数:
// year:
// 一个整数,表示的年份。
//
// month:
// 一个正整数,表示的月份。
//
// day:
// 一个正整数,表示日期。
//
// era:
// 一个表示纪元的整数。
//
// 返回结果:
// 如果指定的日期是闰日,则为 true;否则为 false。
//
// 异常:
// T:System.ArgumentOutOfRangeException:
// year 超出的日历支持的范围。 - 或 - month 超出的日历支持的范围。 - 或 - day 超出的日历支持的范围。 - 或 - era 超出的日历支持的范围。
public abstract bool IsLeapDay(int year, int month, int day, int era);
//
// 摘要:
// 确定当前纪元中指定的日期是否为闰日。
//
// 参数:
// year:
// 一个整数,表示的年份。
//
// month:
// 一个正整数,表示的月份。
//
// day:
// 一个正整数,表示日期。
//
// 返回结果:
// 如果指定的日期是闰日,则为 true;否则为 false。
//
// 异常:
// T:System.ArgumentOutOfRangeException:
// year 超出的日历支持的范围。 - 或 - month 超出的日历支持的范围。 - 或 - day 超出的日历支持的范围。
public virtual bool IsLeapDay(int year, int month, int day);
//
// 摘要:
// 确定当前纪元中指定年份中的指定的月份是否为闰月。
//
// 参数:
// year:
// 一个整数,表示的年份。
//
// month:
// 一个正整数,表示的月份。
//
// 返回结果:
// true 如果指定的月份是闰月;否则为 false。
//
// 异常:
// T:System.ArgumentOutOfRangeException:
// year 超出的日历支持的范围。 - 或 - month 超出的日历支持的范围。
public virtual bool IsLeapMonth(int year, int month);
//
// 摘要:
// 当在派生类中重写,确定指定纪元中的指定年份中的指定的月份是否为闰月。
//
// 参数:
// year:
// 一个整数,表示的年份。
//
// month:
// 一个正整数,表示的月份。
//
// era:
// 一个表示纪元的整数。
//
// 返回结果:
// true 如果指定的月份是闰月;否则为 false。
//
// 异常:
// T:System.ArgumentOutOfRangeException:
// year 超出的日历支持的范围。 - 或 - month 超出的日历支持的范围。 - 或 - era 超出的日历支持的范围。
public abstract bool IsLeapMonth(int year, int month, int era);
//
// 摘要:
// 确定当前纪元中的指定的年份是否为闰年。
//
// 参数:
// year:
// 一个整数,表示的年份。
//
// 返回结果:
// 如果指定的年是闰年,则为 true;否则为 false。
//
// 异常:
// T:System.ArgumentOutOfRangeException:
// year 超出的日历支持的范围。
public virtual bool IsLeapYear(int year);
//
// 摘要:
// 当在派生类中重写,确定指定纪元中的指定的年份是否为闰年。
//
// 参数:
// year:
// 一个整数,表示的年份。
//
// era:
// 一个表示纪元的整数。
//
// 返回结果:
// 如果指定的年是闰年,则为 true;否则为 false。
//
// 异常:
// T:System.ArgumentOutOfRangeException:
// year 超出的日历支持的范围。 - 或 - era 超出的日历支持的范围。
public abstract bool IsLeapYear(int year, int era);
//
// 摘要:
// 返回 System.DateTime 已设置为指定的日期和时间以当前纪元。
//
// 参数:
// year:
// 一个整数,表示的年份。
//
// month:
// 一个正整数,表示的月份。
//
// day:
// 一个正整数,表示日期。
//
// hour:
// 一个从 0 到 23 之间的整数,表示的小时。
//
// minute:
// 一个从 0 到 59 之间的整数,表示分钟。
//
// second:
// 一个从 0 到 59 之间的整数,表示第二个。
//
// millisecond:
// 一个从 0 到 999 之间的整数,表示毫秒。
//
// 返回结果:
// System.DateTime 已设置为指定的日期和时间以当前纪元。
//
// 异常:
// T:System.ArgumentOutOfRangeException:
// year 超出的日历支持的范围。 - 或 - month 超出的日历支持的范围。 - 或 - day 超出的日历支持的范围。 - 或 - hour 小于
// 0 或大于 23。 - 或 - minute 小于零或大于 59。 - 或 - second 小于零或大于 59。 - 或 - millisecond 小于零或大于
// 999。
public virtual DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond);
//
// 摘要:
// 当在派生类中重写返回 System.DateTime 已设置为指定的日期和时间指定纪元中的。
//
// 参数:
// year:
// 一个整数,表示的年份。
//
// month:
// 一个正整数,表示的月份。
//
// day:
// 一个正整数,表示日期。
//
// hour:
// 一个从 0 到 23 之间的整数,表示的小时。
//
// minute:
// 一个从 0 到 59 之间的整数,表示分钟。
//
// second:
// 一个从 0 到 59 之间的整数,表示第二个。
//
// millisecond:
// 一个从 0 到 999 之间的整数,表示毫秒。
//
// era:
// 一个表示纪元的整数。
//
// 返回结果:
// System.DateTime 已设置为指定的日期和时间以当前纪元。
//
// 异常:
// T:System.ArgumentOutOfRangeException:
// year 超出的日历支持的范围。 - 或 - month 超出的日历支持的范围。 - 或 - day 超出的日历支持的范围。 - 或 - hour 小于
// 0 或大于 23。 - 或 - minute 小于零或大于 59。 - 或 - second 小于零或大于 59。 - 或 - millisecond 小于零或大于
// 999。 - 或 - era 超出的日历支持的范围。
public abstract DateTime ToDateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, int era);
//
// 摘要:
// 将指定的年份转换为四位数年份,通过使用 System.Globalization.Calendar.TwoDigitYearMax 属性来确定相应的纪元。
//
// 参数:
// year:
// 两位数字或四位整数,表示要转换的年份。
//
// 返回结果:
// 包含 year 的四位数表示形式的整数。
//
// 异常:
// T:System.ArgumentOutOfRangeException:
// year 超出的日历支持的范围。
public virtual int ToFourDigitYear(int year);
}
}
2、
原文地址:https://www.cnblogs.com/storebook/p/12677099.html
时间: 2024-10-04 17:44:22