Calendar Classe
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Representa o tempo em divisões, como semanas, meses e anos.
public ref class Calendar abstract
public ref class Calendar abstract : ICloneable
public abstract class Calendar
[System.Serializable]
public abstract class Calendar
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public abstract class Calendar : ICloneable
public abstract class Calendar : ICloneable
type Calendar = class
[<System.Serializable>]
type Calendar = class
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type Calendar = class
interface ICloneable
type Calendar = class
interface ICloneable
Public MustInherit Class Calendar
Public MustInherit Class Calendar
Implements ICloneable
- Herança
-
Calendar
- Derivado
- Atributos
- Implementações
Exemplos
O seguinte exemplo de código demonstra os membros da Calendar classe.
using System;
using System.Globalization;
public class SamplesCalendar {
public static void Main() {
// 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.
Console.WriteLine( "April 3, 2002 of the Gregorian calendar:" );
DisplayValues( 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.
Console.WriteLine( "After adding 5 to each component of the DateTime:" );
DisplayValues( myCal, myDT );
}
public static void DisplayValues( Calendar myCal, DateTime myDT ) {
Console.WriteLine( " Era: {0}", myCal.GetEra( myDT ) );
Console.WriteLine( " Year: {0}", myCal.GetYear( myDT ) );
Console.WriteLine( " Month: {0}", myCal.GetMonth( myDT ) );
Console.WriteLine( " DayOfYear: {0}", myCal.GetDayOfYear( myDT ) );
Console.WriteLine( " DayOfMonth: {0}", myCal.GetDayOfMonth( myDT ) );
Console.WriteLine( " DayOfWeek: {0}", myCal.GetDayOfWeek( myDT ) );
Console.WriteLine( " Hour: {0}", myCal.GetHour( myDT ) );
Console.WriteLine( " Minute: {0}", myCal.GetMinute( myDT ) );
Console.WriteLine( " Second: {0}", myCal.GetSecond( myDT ) );
Console.WriteLine( " Milliseconds: {0}", myCal.GetMilliseconds( myDT ) );
Console.WriteLine();
}
}
/*
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
*/
Imports System.Globalization
Public Class SamplesCalendar
Public Shared Sub Main()
' Sets a DateTime to April 3, 2002 of the Gregorian calendar.
Dim myDT As New DateTime(2002, 4, 3, New GregorianCalendar())
' Uses the default calendar of the InvariantCulture.
Dim myCal As Calendar = CultureInfo.InvariantCulture.Calendar
' Displays the values of the DateTime.
Console.WriteLine("April 3, 2002 of the Gregorian calendar:")
DisplayValues(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.
Console.WriteLine("After adding 5 to each component of the DateTime:")
DisplayValues(myCal, myDT)
End Sub
Public Shared Sub DisplayValues(myCal As Calendar, myDT As DateTime)
Console.WriteLine(" Era: {0}", myCal.GetEra(myDT))
Console.WriteLine(" Year: {0}", myCal.GetYear(myDT))
Console.WriteLine(" Month: {0}", myCal.GetMonth(myDT))
Console.WriteLine(" DayOfYear: {0}", myCal.GetDayOfYear(myDT))
Console.WriteLine(" DayOfMonth: {0}", myCal.GetDayOfMonth(myDT))
Console.WriteLine(" DayOfWeek: {0}", myCal.GetDayOfWeek(myDT))
Console.WriteLine(" Hour: {0}", myCal.GetHour(myDT))
Console.WriteLine(" Minute: {0}", myCal.GetMinute(myDT))
Console.WriteLine(" Second: {0}", myCal.GetSecond(myDT))
Console.WriteLine(" Milliseconds: {0}", myCal.GetMilliseconds(myDT))
Console.WriteLine()
End Sub
End Class
'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
Observações
Um calendário divide o tempo em unidades, como semanas, meses e anos. O número, a duração e o início das divisões variam em cada calendário.
Note
Para informações sobre a utilização das classes de calendário em .NET, consulte A Trabalhar com Calendários.
Qualquer momento no tempo pode ser representado como um conjunto de valores numéricos usando um calendário específico. Por exemplo, um equinócio vernal ocorreu em (1999, 3, 20, 8, 46, 0, 0,0) no calendário gregoriano, ou seja, a 20 de março de 1999 d.C. às 8:46:00:0,0. Uma implementação de Calendar pode mapear qualquer data no intervalo de um calendário específico para um conjunto semelhante de valores numéricos, e DateTime pode mapear tais conjuntos de valores numéricos para uma representação textual usando informação de Calendar e DateTimeFormatInfo. A representação textual pode ser sensível à cultura, por exemplo, "8:46 AM 20th March 1999 AD" para a cultura en-US, ou insensível à cultura, por exemplo, "1999-03-20T08:46:00" no formato ISO 8601.
Uma Calendar implementação pode definir uma ou mais eras. A Calendar classe identifica as eras como inteiros enumerados, onde a era atual (CurrentEra) tem o valor 0.
Importante
As eras nos calendários japoneses são baseadas no reinado do imperador e, portanto, espera-se que mudem. Por exemplo, 1º de maio de 2019 marcou o início da era Reiwa no JapaneseCalendar e JapaneseLunisolarCalendar. Essa mudança de era afeta todos os aplicativos que usam esses calendários. Para obter mais informações e determinar se seus aplicativos são afetados, consulte Manipulando uma nova era no calendário japonês no .NET. Para obter informações sobre como testar seus aplicativos em sistemas Windows para garantir sua prontidão para a mudança de era, consulte Preparar seu aplicativo para a mudança de era japonesa. Para obter recursos no .NET que oferecem suporte a calendários com várias eras e práticas recomendadas ao trabalhar com calendários que suportam várias eras, consulte Trabalhando com eras.
Para compensar a diferença entre o ano civil e o tempo real em que a Terra roda em torno do sol ou o tempo real em que a Lua roda em torno da Terra, um ano bissexto tem um número diferente de dias em relação a um ano civil padrão. Cada Calendar implementação define anos bissextos de forma diferente.
Para consistência, a primeira unidade de cada intervalo (o primeiro mês, por exemplo) recebe o valor 1.
O System.Globalization espaço de nomes inclui as seguintes Calendar implementações:
Construtores
| Name | Description |
|---|---|
| Calendar() |
Inicializa uma nova instância da Calendar classe. |
Campos
| Name | Description |
|---|---|
| CurrentEra |
Representa a era atual do calendário atual. O valor deste campo é 0. |
Propriedades
| Name | Description |
|---|---|
| AlgorithmType |
Obtém um valor que indica se o calendário atual é baseado em solar, na lua ou numa combinação de ambos. |
| DaysInYearBeforeMinSupportedYear |
Obtém o número de dias no ano anterior ao ano especificado pela MinSupportedDateTime propriedade. |
| Eras |
Quando sobrescrito numa classe derivada, obtém a lista de eras no calendário atual. |
| IsReadOnly |
Recebe um valor que indica se este Calendar objeto é apenas de leitura. |
| MaxSupportedDateTime |
Obtém a data e hora mais recentes apoiadas por este Calendar objeto. |
| MinSupportedDateTime |
Obtém a data e hora mais antigas apoiadas por este Calendar objeto. |
| TwoDigitYearMax |
Obtém ou define o último ano de um intervalo de 100 anos que pode ser representado por um ano de 2 dígitos. |
Métodos
| Name | Description |
|---|---|
| AddDays(DateTime, Int32) |
Devolve um DateTime que é o número de dias especificado a partir do especificado DateTime. |
| AddHours(DateTime, Int32) |
Retorna um DateTime que é o número especificado de horas do especificado DateTime. |
| AddMilliseconds(DateTime, Double) |
Devolve a DateTime que é o número especificado de milissegundos do especificado DateTime. |
| AddMinutes(DateTime, Int32) |
Devolve a DateTime que é o número especificado de minutos do especificado DateTime. |
| AddMonths(DateTime, Int32) |
Quando sobrescrito numa classe derivada, devolve um DateTime que é o número especificado de meses em relação ao especificado DateTime. |
| AddSeconds(DateTime, Int32) |
Retorna a DateTime que é o número especificado de segundos a partir do especificado DateTime. |
| AddWeeks(DateTime, Int32) |
Devolve um DateTime que é o número especificado de semanas a partir do especificado DateTime. |
| AddYears(DateTime, Int32) |
Quando sobreposto numa classe derivada, devolve a DateTime que é o número especificado de anos em relação ao especificado DateTime. |
| Clone() |
Cria um novo objeto que é uma cópia do objeto atual Calendar . |
| Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
| GetDayOfMonth(DateTime) |
Quando sobreposto numa classe derivada, devolve o dia do mês na especificada DateTime. |
| GetDayOfWeek(DateTime) |
Quando sobreposto numa classe derivada, devolve o dia da semana no especificado DateTime. |
| GetDayOfYear(DateTime) |
Quando sobreposto numa classe derivada, devolve o dia do ano no especificado DateTime. |
| GetDaysInMonth(Int32, Int32, Int32) |
Quando sobreposto numa classe derivada, devolve o número de dias no mês, ano e era especificados. |
| GetDaysInMonth(Int32, Int32) |
Devolve o número de dias no mês e ano especificados da era atual. |
| GetDaysInYear(Int32, Int32) |
Quando sobreposto numa classe derivada, devolve o número de dias no ano e era especificados. |
| GetDaysInYear(Int32) |
Devolve o número de dias no ano especificado da era atual. |
| GetEra(DateTime) |
Quando sobrescrito numa classe derivada, devolve a era do especificado DateTime. |
| GetHashCode() |
Serve como função de hash predefinida. (Herdado de Object) |
| GetHour(DateTime) |
Devolve o valor das horas no especificado DateTime. |
| GetLeapMonth(Int32, Int32) |
Calcula o mês bissexto para um ano e era especificados. |
| GetLeapMonth(Int32) |
Calcula o mês bissexto para um ano especificado. |
| GetMilliseconds(DateTime) |
Devolve o valor de milissegundos no especificado DateTime. |
| GetMinute(DateTime) |
Devolve o valor dos minutos no especificado DateTime. |
| GetMonth(DateTime) |
Quando sobreposto numa classe derivada, devolve o mês no especificado DateTime. |
| GetMonthsInYear(Int32, Int32) |
Quando anulado numa classe derivada, devolve o número de meses no ano especificado na era especificada. |
| GetMonthsInYear(Int32) |
Devolve o número de meses do ano especificado na era atual. |
| GetSecond(DateTime) |
Devolve o valor dos segundos no especificado DateTime. |
| GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
| GetWeekOfYear(DateTime, CalendarWeekRule, DayOfWeek) |
Devolve a semana do ano que inclui a data no valor especificado DateTime . |
| GetYear(DateTime) |
Quando sobreposto numa classe derivada, devolve o ano no especificado DateTime. |
| IsLeapDay(Int32, Int32, Int32, Int32) |
Quando sobreposto numa classe derivada, determina se a data especificada na era especificada é um dia bissexto. |
| IsLeapDay(Int32, Int32, Int32) |
Determina se a data especificada na era atual é um dia bissexto. |
| IsLeapMonth(Int32, Int32, Int32) |
Quando anulado numa classe derivada, determina se o mês especificado no ano especificado na era especificada é um mês bissexto. |
| IsLeapMonth(Int32, Int32) |
Determina se o mês especificado no ano especificado na era atual é um mês bissexto. |
| IsLeapYear(Int32, Int32) |
Quando sobreposto numa classe derivada, determina se o ano especificado na era especificada é um ano bissexto. |
| IsLeapYear(Int32) |
Determina se o ano especificado na era atual é um ano bissexto. |
| MemberwiseClone() |
Cria uma cópia superficial do atual Object. (Herdado de Object) |
| ReadOnly(Calendar) |
Retorna uma versão de apenas leitura do objeto especificado Calendar . |
| ToDateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Int32) |
Quando sobrescrito numa classe derivada, devolve a DateTime que é definido para a data e hora especificadas na era especificada. |
| ToDateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32) |
Devolve a DateTime que está definido para a data e hora especificadas na era atual. |
| ToFourDigitYear(Int32) |
Converte o ano especificado para um ano de quatro dígitos, usando a TwoDigitYearMax propriedade para determinar o século apropriado. |
| ToString() |
Devolve uma cadeia que representa o objeto atual. (Herdado de Object) |
Aplica-se a
Ver também
- DateTime
- DateTimeFormatInfo
- ChineseLunisolarCalendar
- EastAsianLunisolarCalendar
- GregorianCalendar
- HebrewCalendar
- HijriCalendar
- JapaneseCalendar
- JapaneseLunisolarCalendar
- JulianCalendar
- KoreanCalendar
- KoreanLunisolarCalendar
- PersianCalendar
- TaiwanCalendar
- TaiwanLunisolarCalendar
- ThaiBuddhistCalendar
- UmAlQuraCalendar
- Trabalhar com Calendários