此页面有用吗?
您对此内容的反馈非常重要。 请告诉我们您的想法。
更多反馈?
1500 个剩余字符
Calendar 类
此文章由人工翻译。 将光标移到文章的句子上,以查看原文。
译文
原文

Calendar 类

将时间分成段来表示,如分成星期、月和年。

命名空间:  System.Globalization
程序集:  mscorlib(在 mscorlib.dll 中)

[ComVisibleAttribute(true)]
public abstract class Calendar

Calendar 类型公开以下成员。

  名称说明
受保护的方法受 Silverlight for Windows Phone 支持受 Xbox 360 支持Calendar初始化 Calendar 类的新实例。
页首

  名称说明
公共属性受 Silverlight for Windows Phone 支持受 Xbox 360 支持Eras当在派生类中重写时,获取当前日历中的纪元列表。
公共属性受 Silverlight for Windows Phone 支持受 Xbox 360 支持IsReadOnly获取一个值,该值指示此 Calendar 对象是否为只读。
公共属性受 Silverlight for Windows Phone 支持受 Xbox 360 支持MaxSupportedDateTime获取此 Calendar 对象支持的最晚日期和时间。
公共属性受 Silverlight for Windows Phone 支持受 Xbox 360 支持MinSupportedDateTime获取此 Calendar 对象支持的最早日期和时间。
公共属性受 Silverlight for Windows Phone 支持受 Xbox 360 支持TwoDigitYearMax获取或设置可以用两位数年份表示的 100 年范围内的最后一年。
页首

  名称说明
公共方法受 Silverlight for Windows Phone 支持受 Xbox 360 支持AddDays返回与指定 DateTime 相距指定天数的 DateTime
公共方法受 Silverlight for Windows Phone 支持受 Xbox 360 支持AddHours返回与指定 DateTime 相距指定小时数的 DateTime
公共方法受 Silverlight for Windows Phone 支持受 Xbox 360 支持AddMilliseconds返回与指定 DateTime 相距指定毫秒数的 DateTime
公共方法受 Silverlight for Windows Phone 支持受 Xbox 360 支持AddMinutes返回与指定的 DateTime 相距指定分钟数的 DateTime
公共方法受 Silverlight for Windows Phone 支持受 Xbox 360 支持AddMonths当在派生类中重写时,将返回与指定的 DateTime 相距指定月数的 DateTime
公共方法受 Silverlight for Windows Phone 支持受 Xbox 360 支持AddSeconds返回与指定 DateTime 相距指定秒数的 DateTime
公共方法受 Silverlight for Windows Phone 支持受 Xbox 360 支持AddWeeks返回与指定 DateTime 相距指定周数的 DateTime
公共方法受 Silverlight for Windows Phone 支持受 Xbox 360 支持AddYears当在派生类中重写时,将返回与指定的 DateTime 相距指定年数的 DateTime
公共方法受 Silverlight for Windows Phone 支持受 Xbox 360 支持Equals(Object)确定指定的 Object 是否等于当前的 Object (继承自 Object。)
受保护的方法受 Silverlight for Windows Phone 支持受 Xbox 360 支持Finalize允许对象在垃圾回收对 Object 进行回收之前尝试释放资源并执行其他清理操作。 (继承自 Object。)
公共方法受 Silverlight for Windows Phone 支持受 Xbox 360 支持GetDayOfMonth当在派生类中重写时,将返回指定 DateTime 中的日期是该月的几号。
公共方法受 Silverlight for Windows Phone 支持受 Xbox 360 支持GetDayOfWeek当在派生类中重写时,将返回指定 DateTime 中的日期是星期几。
公共方法受 Silverlight for Windows Phone 支持受 Xbox 360 支持GetDayOfYear当在派生类中重写时,将返回指定 DateTime 中的日期是该年中的第几天。
公共方法受 Silverlight for Windows Phone 支持受 Xbox 360 支持GetDaysInMonth(Int32, Int32)返回当前纪元的指定月份和年份中的天数。
公共方法受 Silverlight for Windows Phone 支持受 Xbox 360 支持GetDaysInMonth(Int32, Int32, Int32)当在派生类中重写时,返回指定月份、纪元年份中的天数。
公共方法受 Silverlight for Windows Phone 支持受 Xbox 360 支持GetDaysInYear(Int32)返回当前纪元的指定年份中的天数。
公共方法受 Silverlight for Windows Phone 支持受 Xbox 360 支持GetDaysInYear(Int32, Int32)当在派生类中重写时,返回指定纪元年份中的天数。
公共方法受 Silverlight for Windows Phone 支持受 Xbox 360 支持GetEra当在派生类中重写时,将返回指定的 DateTime 中的纪元。
公共方法受 Silverlight for Windows Phone 支持受 Xbox 360 支持GetHashCode用作特定类型的哈希函数。 (继承自 Object。)
公共方法受 Silverlight for Windows Phone 支持受 Xbox 360 支持GetHour返回指定的 DateTime 中的小时值。
公共方法受 Silverlight for Windows Phone 支持受 Xbox 360 支持GetLeapMonth计算指定纪元年份的闰月。
公共方法受 Silverlight for Windows Phone 支持受 Xbox 360 支持GetMilliseconds返回指定的 DateTime 中的毫秒值。
公共方法受 Silverlight for Windows Phone 支持受 Xbox 360 支持GetMinute返回指定的 DateTime 中的分钟值。
公共方法受 Silverlight for Windows Phone 支持受 Xbox 360 支持GetMonth当在派生类中重写时,将返回指定的 DateTime 中的月份。
公共方法受 Silverlight for Windows Phone 支持受 Xbox 360 支持GetMonthsInYear(Int32)返回当前纪元中指定年份的月数。
公共方法受 Silverlight for Windows Phone 支持受 Xbox 360 支持GetMonthsInYear(Int32, Int32)当在派生类中重写时,将返回指定纪元中指定年份的月数。
公共方法受 Silverlight for Windows Phone 支持受 Xbox 360 支持GetSecond返回指定的 DateTime 中的秒值。
公共方法受 Silverlight for Windows Phone 支持受 Xbox 360 支持GetType获取当前实例的 Type (继承自 Object。)
公共方法受 Silverlight for Windows Phone 支持受 Xbox 360 支持GetWeekOfYear返回一年中包括指定 DateTime 值中的日期的那个星期。
公共方法受 Silverlight for Windows Phone 支持受 Xbox 360 支持GetYear当在派生类中重写时,将返回指定的 DateTime 中的年份。
公共方法受 Silverlight for Windows Phone 支持受 Xbox 360 支持IsLeapDay(Int32, Int32, Int32)确定当前纪元中的指定日期是否为闰日。
公共方法受 Silverlight for Windows Phone 支持受 Xbox 360 支持IsLeapDay(Int32, Int32, Int32, Int32)当在派生类中重写时,将确定指定纪元中的指定日期是否为闰日。
公共方法受 Silverlight for Windows Phone 支持受 Xbox 360 支持IsLeapMonth(Int32, Int32)确定当前纪元中指定年份的指定月份是否为闰月。
公共方法受 Silverlight for Windows Phone 支持受 Xbox 360 支持IsLeapMonth(Int32, Int32, Int32)当在派生类中重写时,将确定指定纪元中指定年份的指定月份是否为闰月。
公共方法受 Silverlight for Windows Phone 支持受 Xbox 360 支持IsLeapYear(Int32)确定当前纪元中的指定年份是否为闰年。
公共方法受 Silverlight for Windows Phone 支持受 Xbox 360 支持IsLeapYear(Int32, Int32)当在派生类中重写时,将确定指定纪元中的指定年份是否为闰年。
受保护的方法受 Silverlight for Windows Phone 支持受 Xbox 360 支持MemberwiseClone创建当前 Object 的浅表副本。 (继承自 Object。)
公共方法受 Silverlight for Windows Phone 支持受 Xbox 360 支持ToDateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32)返回设置为当前纪元中的指定日期和时间的 DateTime
公共方法受 Silverlight for Windows Phone 支持受 Xbox 360 支持ToDateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Int32)当在派生类中重写时,将返回设置为指定纪元中的指定日期和时间的 DateTime
公共方法受 Silverlight for Windows Phone 支持受 Xbox 360 支持ToFourDigitYear使用 TwoDigitYearMax 属性将指定的年份转换为四位数年份,以确定相应的纪元。
公共方法受 Silverlight for Windows Phone 支持受 Xbox 360 支持ToString返回表示当前对象的字符串。 (继承自 Object。)
页首

  名称说明
公共字段静态成员受 Silverlight for Windows Phone 支持受 Xbox 360 支持CurrentEra表示当前日历的当前纪元。
页首

日历将时间按单位(如星期、月和年)划分。 每种日历中分成的段数、段的长度和起始点均不相同。

使用特定日历可以将任何时刻都表示为一组数值。 例如,某次春分发生在公历的 (1999, 3, 20, 8, 46, 0, 0.0),即公元 1999 年 3 月 20 日。 8:46:00:0.0。 Calendar 的实现可以将特定日历范围内的任何日期映射到一个类似的数值集,并且 DateTime 可以使用 CalendarDateTimeFormatInfo 中的信息将这些数值集映射为一种文本表示形式。 文本表示形式既可以是区分区域性的(例如,按照 en-US 区域性表示的"8:46 AM March 20th 1999 AD"),也可以是不区分区域性的(例如,以 ISO 8601 格式表示的"1999-03-20T08:46:00")。

一个 Calendar 实现可定义一个或多个纪元。 Calendar 类将纪元标识为枚举的整数,其中当前纪元 (CurrentEra) 的值为 0。

闰年与标准历年的天数不同,这是为了弥补日历年与地球绕太阳旋转的实际时间或日历年与月亮绕地球旋转的实际时间之间的差距。 各个 Calendar 实现分别对闰年作出了不同的定义。

为一致起见,每个时间间隔中的第一个单元(例如第一个月)被赋值为 1。

System.Globalization 命名空间包括下列 Calendar 实现:

下面的代码示例介绍 Calendar 类的成员。


using System;
using System.Globalization;


public class Example
{

   public static void Demo(System.Windows.Controls.TextBlock outputBlock)
   {

      // Sets a DateTime to April 3, 2002 of the Gregorian calendar.
      DateTime myDT = new DateTime(2002, 4, 3, new GregorianCalendar());

      // Uses the default calendar of the InvariantCulture.
      Calendar myCal = CultureInfo.InvariantCulture.Calendar;

      // Displays the values of the DateTime.
      outputBlock.Text += String.Format("April 3, 2002 of the Gregorian calendar:") + "\n";
      DisplayValues(outputBlock, myCal, myDT);

      // Adds 5 to every component of the DateTime.
      myDT = myCal.AddYears(myDT, 5);
      myDT = myCal.AddMonths(myDT, 5);
      myDT = myCal.AddWeeks(myDT, 5);
      myDT = myCal.AddDays(myDT, 5);
      myDT = myCal.AddHours(myDT, 5);
      myDT = myCal.AddMinutes(myDT, 5);
      myDT = myCal.AddSeconds(myDT, 5);
      myDT = myCal.AddMilliseconds(myDT, 5);

      // Displays the values of the DateTime.
      outputBlock.Text += "After adding 5 to each component of the DateTime:" + "\n";
      DisplayValues(outputBlock, myCal, myDT);

   }

   public static void DisplayValues(System.Windows.Controls.TextBlock outputBlock, Calendar myCal, DateTime myDT)
   {
      outputBlock.Text += String.Format("   Era:          {0}", myCal.GetEra(myDT)) + "\n";
      outputBlock.Text += String.Format("   Year:         {0}", myCal.GetYear(myDT)) + "\n";
      outputBlock.Text += String.Format("   Month:        {0}", myCal.GetMonth(myDT)) + "\n";
      outputBlock.Text += String.Format("   DayOfYear:    {0}", myCal.GetDayOfYear(myDT)) + "\n";
      outputBlock.Text += String.Format("   DayOfMonth:   {0}", myCal.GetDayOfMonth(myDT)) + "\n";
      outputBlock.Text += String.Format("   DayOfWeek:    {0}", myCal.GetDayOfWeek(myDT)) + "\n";
      outputBlock.Text += String.Format("   Hour:         {0}", myCal.GetHour(myDT)) + "\n";
      outputBlock.Text += String.Format("   Minute:       {0}", myCal.GetMinute(myDT)) + "\n";
      outputBlock.Text += String.Format("   Second:       {0}", myCal.GetSecond(myDT)) + "\n";
      outputBlock.Text += String.Format("   Milliseconds: {0}", myCal.GetMilliseconds(myDT)) + "\n";
      outputBlock.Text += "\n";
   }

}


/*
This code produces the following output.

April 3, 2002 of the Gregorian calendar:
   Era:          1
   Year:         2002
   Month:        4
   DayOfYear:    93
   DayOfMonth:   3
   DayOfWeek:    Wednesday
   Hour:         0
   Minute:       0
   Second:       0
   Milliseconds: 0

After adding 5 to each component of the DateTime:
   Era:          1
   Year:         2007
   Month:        10
   DayOfYear:    286
   DayOfMonth:   13
   DayOfWeek:    Saturday
   Hour:         5
   Minute:       5
   Second:       5
   Milliseconds: 5

*/


Silverlight

受以下版本支持:5、4、3

Silverlight for Windows Phone

受以下版本支持:Windows Phone OS 7.1、Windows Phone OS 7.0

XNA Framework

受以下版本支持:Xbox 360、Windows Phone OS 7.0

有关 Silverlight 支持的操作系统和浏览器的列表,请参见 支持的操作系统和浏览器

此类型的任何公共 static(在 Visual Basic 中为 Shared) 成员都是线程安全的。但不保证所有实例成员都是线程安全的。

社区附加资源

添加
Microsoft 正在进行一项网上调查,以了解您对 MSDN 网站的意见。 如果您选择参加,我们将会在您离开 MSDN 网站时向您显示该网上调查。

是否要参加?
显示:
© 2015 Microsoft