GregorianCalendar Klass

Definition

Representerar den gregorianska kalendern.

public ref class GregorianCalendar : System::Globalization::Calendar
public class GregorianCalendar : System.Globalization.Calendar
[System.Serializable]
public class GregorianCalendar : System.Globalization.Calendar
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public class GregorianCalendar : System.Globalization.Calendar
type GregorianCalendar = class
    inherit Calendar
[<System.Serializable>]
type GregorianCalendar = class
    inherit Calendar
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type GregorianCalendar = class
    inherit Calendar
Public Class GregorianCalendar
Inherits Calendar
Arv
GregorianCalendar
Attribut

Exempel

Följande kodexempel visar att DateTimeFormatInfo ignorerar skiljetecken i eranamnet, endast om kalendern är gregoriansk och kulturen använder eranamnet "A.D".

using System;
using System.Globalization;

public class SamplesGregorianCalendar  {

   public static void Main()  {

      // Creates strings with punctuation and without.
      String strADPunc = "A.D.";
      String strADNoPunc = "AD";
      String strCEPunc = "C.E.";
      String strCENoPunc = "CE";

      // Calls DTFI.GetEra for each culture that uses GregorianCalendar as the default calendar.
      Console.WriteLine( "            ----- AD -----  ----- CE -----" );
      Console.WriteLine( "CULTURE     PUNC   NO PUNC  PUNC   NO PUNC  CALENDAR" );
      foreach ( CultureInfo myCI in CultureInfo.GetCultures( CultureTypes.SpecificCultures ) )  {
         Console.Write( "{0,-12}", myCI );
         Console.Write( "{0,-7}{1,-9}", myCI.DateTimeFormat.GetEra( strADPunc ), myCI.DateTimeFormat.GetEra( strADNoPunc ) );
         Console.Write( "{0,-7}{1,-9}", myCI.DateTimeFormat.GetEra( strCEPunc ), myCI.DateTimeFormat.GetEra( strCENoPunc ) );
         Console.Write( "{0}", myCI.Calendar );
         Console.WriteLine();
      }
   }
}

/*
This code produces the following output.  This output has been cropped for brevity.

            ----- AD -----  ----- CE -----
CULTURE     PUNC   NO PUNC  PUNC   NO PUNC  CALENDAR
ar-SA       -1     -1       -1     -1       System.Globalization.HijriCalendar
ar-IQ       1      1        -1     -1       System.Globalization.GregorianCalendar
ar-EG       1      1        -1     -1       System.Globalization.GregorianCalendar
ar-LY       1      1        -1     -1       System.Globalization.GregorianCalendar
ar-DZ       1      1        -1     -1       System.Globalization.GregorianCalendar
ar-MA       1      1        -1     -1       System.Globalization.GregorianCalendar
ar-TN       1      1        -1     -1       System.Globalization.GregorianCalendar
ar-OM       1      1        -1     -1       System.Globalization.GregorianCalendar
ar-YE       1      1        -1     -1       System.Globalization.GregorianCalendar
ar-SY       1      1        -1     -1       System.Globalization.GregorianCalendar
ar-JO       1      1        -1     -1       System.Globalization.GregorianCalendar
ar-LB       1      1        -1     -1       System.Globalization.GregorianCalendar
ar-KW       1      1        -1     -1       System.Globalization.GregorianCalendar
ar-AE       1      1        -1     -1       System.Globalization.GregorianCalendar
ar-BH       1      1        -1     -1       System.Globalization.GregorianCalendar
ar-QA       1      1        -1     -1       System.Globalization.GregorianCalendar
bg-BG       1      1        -1     -1       System.Globalization.GregorianCalendar
ca-ES       -1     -1       -1     -1       System.Globalization.GregorianCalendar
zh-TW       -1     -1       -1     -1       System.Globalization.GregorianCalendar
zh-CN       -1     -1       -1     -1       System.Globalization.GregorianCalendar
zh-HK       -1     -1       -1     -1       System.Globalization.GregorianCalendar
zh-SG       1      1        -1     -1       System.Globalization.GregorianCalendar
zh-MO       1      1        -1     -1       System.Globalization.GregorianCalendar
cs-CZ       -1     -1       -1     -1       System.Globalization.GregorianCalendar
da-DK       1      1        -1     -1       System.Globalization.GregorianCalendar

*/
Imports System.Globalization

Public Class SamplesGregorianCalendar

   Public Shared Sub Main()

      ' Creates strings with punctuation and without.
      Dim strADPunc As [String] = "A.D."
      Dim strADNoPunc As [String] = "AD"
      Dim strCEPunc As [String] = "C.E."
      Dim strCENoPunc As [String] = "CE"

      ' Calls DTFI.GetEra for each culture that uses GregorianCalendar as the default calendar.
      Console.WriteLine("            ----- AD -----  ----- CE -----")
      Console.WriteLine("CULTURE     PUNC   NO PUNC  PUNC   NO PUNC  CALENDAR")
      Dim myCI As CultureInfo
      For Each myCI In  CultureInfo.GetCultures(CultureTypes.SpecificCultures)
         Console.Write("{0,-12}", myCI)
         Console.Write("{0,-7}{1,-9}", myCI.DateTimeFormat.GetEra(strADPunc), myCI.DateTimeFormat.GetEra(strADNoPunc))
         Console.Write("{0,-7}{1,-9}", myCI.DateTimeFormat.GetEra(strCEPunc), myCI.DateTimeFormat.GetEra(strCENoPunc))
         Console.Write("{0}", myCI.Calendar)
         Console.WriteLine()
      Next myCI

   End Sub

End Class


'This code produces the following output.  This output has been cropped for brevity.
'
'            ----- AD -----  ----- CE -----
'CULTURE     PUNC   NO PUNC  PUNC   NO PUNC  CALENDAR
'ar-SA       -1     -1       -1     -1       System.Globalization.HijriCalendar
'ar-IQ       1      1        -1     -1       System.Globalization.GregorianCalendar
'ar-EG       1      1        -1     -1       System.Globalization.GregorianCalendar
'ar-LY       1      1        -1     -1       System.Globalization.GregorianCalendar
'ar-DZ       1      1        -1     -1       System.Globalization.GregorianCalendar
'ar-MA       1      1        -1     -1       System.Globalization.GregorianCalendar
'ar-TN       1      1        -1     -1       System.Globalization.GregorianCalendar
'ar-OM       1      1        -1     -1       System.Globalization.GregorianCalendar
'ar-YE       1      1        -1     -1       System.Globalization.GregorianCalendar
'ar-SY       1      1        -1     -1       System.Globalization.GregorianCalendar
'ar-JO       1      1        -1     -1       System.Globalization.GregorianCalendar
'ar-LB       1      1        -1     -1       System.Globalization.GregorianCalendar
'ar-KW       1      1        -1     -1       System.Globalization.GregorianCalendar
'ar-AE       1      1        -1     -1       System.Globalization.GregorianCalendar
'ar-BH       1      1        -1     -1       System.Globalization.GregorianCalendar
'ar-QA       1      1        -1     -1       System.Globalization.GregorianCalendar
'bg-BG       1      1        -1     -1       System.Globalization.GregorianCalendar
'ca-ES       -1     -1       -1     -1       System.Globalization.GregorianCalendar
'zh-TW       -1     -1       -1     -1       System.Globalization.GregorianCalendar
'zh-CN       -1     -1       -1     -1       System.Globalization.GregorianCalendar
'zh-HK       -1     -1       -1     -1       System.Globalization.GregorianCalendar
'zh-SG       1      1        -1     -1       System.Globalization.GregorianCalendar
'zh-MO       1      1        -1     -1       System.Globalization.GregorianCalendar
'cs-CZ       -1     -1       -1     -1       System.Globalization.GregorianCalendar
'da-DK       1      1        -1     -1       System.Globalization.GregorianCalendar

Kommentarer

Den gregorianska kalendern känner igen två epoker: B.C. eller B.C.E., och A.D. eller C.E. Den här implementeringen av GregorianCalendar klassen identifierar endast den aktuella eran (A.D. eller C.E.).

Note

Information om hur du använder klassen GregorianCalendar och andra kalenderklasser i .NET Framework finns i Working with Calendars.

Ett skottår i den gregorianska kalendern definieras som ett år som är jämnt delbart med 4, såvida det inte är delbart med 100. Men år som är delbara med 400 är skottår. År 1900 var till exempel inte ett skottår, men år 2000 var det. Ett vanligt år har 365 dagar och ett skottår har 366 dagar.

Den gregorianska kalendern har 12 månader med 28 till 31 dagar var: Januari (31 dagar), Februari (28 eller 29 dagar), Mars (31 dagar), April (30 dagar), Maj (28 eller 29 dagar), Mars (31 dagar), April (30 dagar), Maj (28 eller 29 dagar), Mars (31 dagar), April (30 dagar), Maj (28 eller 29 dagar), Mars (31 dagar), April (30 dagar), Maj (28 eller 29 dagar), Mars (31 dagar), April (30 dagar), Maj (28 eller 29 dagar), Mars (31 31 dagar), juni (30 dagar), juli (31 dagar), augusti (31 dagar), september (30 dagar), oktober (31 dagar), november (30 dagar) och december (31 dagar). Februari har 29 dagar under skottår och 28 under vanliga år.

Important

Som standard uttrycker alla DateTimeDateTimeOffset värden och datum och tider i den gregorianska kalendern.

Den gregorianska kalendern utvecklades som en ersättning för den julianska kalendern (som representeras av JulianCalendar klassen) och introducerades först i ett litet antal kulturer den 15 oktober 1582. När du arbetar med historiska datum som föregår en kulturs införande av den gregorianska kalendern bör du använda den ursprungliga kalendern om den är tillgänglig i .NET Framework. Danmark ändrades till exempel från den julianska kalendern till den gregorianska kalendern den 19 februari (i den julianska kalendern) eller 1 mars (i den gregorianska kalendern) av 1700. I det här fallet bör du använda den julianska kalendern för datum före antagandet av den gregorianska kalendern. Observera dock att ingen kultur erbjuder inbyggt stöd för JulianCalendar klassen. Du måste använda JulianCalendar klassen som en fristående kalender. Mer information finns i Arbeta med kalendrar.

I följande exempel visas att den 18 februari 1700 i den julianska kalendern, som är den sista dagen som den julianska kalendern officiellt användes i Danmark, är en dag tidigare än den 1 mars 1700 i den gregorianska kalendern.

using System;
using System.Globalization;
using System.Threading;

public class Example
{
   public static void Main()
   {
      Thread.CurrentThread.CurrentCulture = new CultureInfo("da-DK");

      JulianCalendar jc = new JulianCalendar();
      DateTime lastDate = new DateTime(1700, 2, 18, jc);
      Console.WriteLine("Last date (Gregorian): {0:d}", lastDate);
      Console.WriteLine("Last date (Julian): {0}-{1}-{2}\n", jc.GetDayOfMonth(lastDate),
                        jc.GetMonth(lastDate), jc.GetYear(lastDate));

      DateTime firstDate = lastDate.AddDays(1);
      Console.WriteLine("First date (Gregorian): {0:d}", firstDate);
      Console.WriteLine("First date (Julian): {0}-{1}-{2}",  jc.GetDayOfMonth(firstDate),
                        jc.GetMonth(firstDate), jc.GetYear(firstDate));
   }
}
// The example displays the following output:
//       Last date (Gregorian): 28-02-1700
//       Last date (Julian): 18-2-1700
//
//       First date (Gregorian): 01-03-1700
//       First date (Julian): 19-2-1700
Imports System.Globalization
Imports System.Threading

Module Example
   Public Sub Main()
      Thread.CurrentThread.CurrentCulture = New CultureInfo("da-DK")
      
      Dim jc As New JulianCalendar()
      Dim lastDate As New DateTime(1700, 2, 18, jc)
      Console.WriteLine("Last date (Gregorian): {0:d}", lastDate)
      Console.WriteLine("Last date (Julian): {0}-{1}-{2}", jc.GetDayOfMonth(lastDate),
                        jc.GetMonth(lastDate), jc.GetYear(lastDate))
      Console.WriteLine()
      
      Dim firstDate As DateTime = lastDate.AddDays(1)
      Console.WriteLine("First date (Gregorian): {0:d}", firstDate)
      Console.WriteLine("First date (Julian): {0}-{1}-{2}",  jc.GetDayOfMonth(firstDate),
                        jc.GetMonth(firstDate), jc.GetYear(firstDate))
   End Sub
End Module
' The example displays the following output:
'       Last date (Gregorian): 28-02-1700
'       Last date (Julian): 18-2-1700
'       
'       First date (Gregorian): 01-03-1700
'       First date (Julian): 19-2-1700

Var och CultureInfo en stöder en uppsättning kalendrar. Egenskapen Calendar returnerar standardkalendern för kulturen och OptionalCalendars egenskapen returnerar en matris som innehåller alla kalendrar som stöds av kulturen. Om du vill ändra kalendern som används av en CultureInfokan programmet ange Calendar egenskapen till en ny Calendar.

GetEra ignorerar skiljetecken i förkortade eranamn, endast om GregorianCalendar är markerat i DateTimeFormatInfo.Calendar och kulturen använder "A.D." som eranamn, dvs. "A.D." motsvarar "AD".

Konstruktorer

Name Description
GregorianCalendar()

Initierar en ny instans av GregorianCalendar klassen med standardvärdet GregorianCalendarTypes .

GregorianCalendar(GregorianCalendarTypes)

Initierar en ny instans av GregorianCalendar klassen med det angivna GregorianCalendarTypes värdet.

Fält

Name Description
ADEra

Representerar den aktuella eran. Det här fältet är konstant.

CurrentEra

Representerar den aktuella eran i den aktuella kalendern. Värdet för det här fältet är 0.

(Ärvd från Calendar)

Egenskaper

Name Description
AlgorithmType

Hämtar ett värde som anger om den aktuella kalendern är solbaserad, månbaserad eller en kombination av båda.

CalendarType

Hämtar eller anger det GregorianCalendarTypes värde som anger språkversionen av den aktuella GregorianCalendar.

DaysInYearBeforeMinSupportedYear

Hämtar antalet dagar under året som föregår det år som anges av MinSupportedDateTime egenskapen.

(Ärvd från Calendar)
Eras

Hämtar listan över epoker i GregorianCalendar.

IsReadOnly

Hämtar ett värde som anger om det här Calendar objektet är skrivskyddat.

(Ärvd från Calendar)
MaxSupportedDateTime

Hämtar det senaste datum och den tid som stöds av GregorianCalendar typen .

MinSupportedDateTime

Hämtar det tidigaste datum och den tid som stöds av GregorianCalendar typen .

TwoDigitYearMax

Hämtar eller anger det sista året för ett 100-årsintervall som kan representeras av ett 2-siffrigt år.

Metoder

Name Description
AddDays(DateTime, Int32)

Returnerar ett DateTime som är det angivna antalet dagar från det angivna DateTime.

(Ärvd från Calendar)
AddHours(DateTime, Int32)

Returnerar ett DateTime som är det angivna antalet timmar från den angivna DateTime.

(Ärvd från Calendar)
AddMilliseconds(DateTime, Double)

Returnerar ett DateTime som är det angivna antalet millisekunder bort från den angivna DateTime.

(Ärvd från Calendar)
AddMinutes(DateTime, Int32)

Returnerar ett DateTime som är det angivna antalet minuter från den angivna DateTime.

(Ärvd från Calendar)
AddMonths(DateTime, Int32)

Returnerar ett DateTime som är det angivna antalet månader från den angivna DateTime.

AddSeconds(DateTime, Int32)

Returnerar ett DateTime som är det angivna antalet sekunder från den angivna DateTime.

(Ärvd från Calendar)
AddWeeks(DateTime, Int32)

Returnerar ett DateTime som är det angivna antalet veckor från den angivna DateTime.

AddWeeks(DateTime, Int32)

Returnerar ett DateTime som är det angivna antalet veckor från den angivna DateTime.

(Ärvd från Calendar)
AddYears(DateTime, Int32)

Returnerar ett DateTime som är det angivna antalet år från det angivna DateTime.

Clone()

Skapar ett nytt objekt som är en kopia av det aktuella Calendar objektet.

(Ärvd från Calendar)
Equals(Object)

Avgör om det angivna objektet är lika med det aktuella objektet.

(Ärvd från Object)
GetDayOfMonth(DateTime)

Returnerar dagen i månaden i den angivna DateTime.

GetDayOfWeek(DateTime)

Returnerar veckodagen i den angivna DateTime.

GetDayOfYear(DateTime)

Returnerar dagen på året i den angivna DateTime.

GetDaysInMonth(Int32, Int32, Int32)

Returnerar antalet dagar i den angivna månaden under det angivna året i den angivna eran.

GetDaysInMonth(Int32, Int32)

Returnerar antalet dagar i den angivna månaden och året för den aktuella eran.

(Ärvd från Calendar)
GetDaysInYear(Int32, Int32)

Returnerar antalet dagar under det angivna året i den angivna eran.

GetDaysInYear(Int32)

Returnerar antalet dagar under det angivna året för den aktuella eran.

(Ärvd från Calendar)
GetEra(DateTime)

Returnerar eran i den angivna DateTime.

GetHashCode()

Fungerar som standard-hash-funktion.

(Ärvd från Object)
GetHour(DateTime)

Returnerar timvärdet i den angivna DateTime.

(Ärvd från Calendar)
GetLeapMonth(Int32, Int32)

Beräknar skottmånaden för ett angivet år och en angiven era.

GetLeapMonth(Int32)

Beräknar skottmånaden för ett angivet år.

(Ärvd från Calendar)
GetMilliseconds(DateTime)

Returnerar millisekundersvärdet i den angivna DateTime.

(Ärvd från Calendar)
GetMinute(DateTime)

Returnerar minutvärdet i den angivna DateTime.

(Ärvd från Calendar)
GetMonth(DateTime)

Returnerar månaden i den angivna DateTime.

GetMonthsInYear(Int32, Int32)

Returnerar antalet månader under det angivna året i den angivna eran.

GetMonthsInYear(Int32)

Returnerar antalet månader under det angivna året i den aktuella eran.

(Ärvd från Calendar)
GetSecond(DateTime)

Returnerar sekundvärdet i den angivna DateTime.

(Ärvd från Calendar)
GetType()

Hämtar den aktuella instansen Type .

(Ärvd från Object)
GetWeekOfYear(DateTime, CalendarWeekRule, DayOfWeek)

Returnerar den vecka på året som innehåller datumet i det angivna DateTime objektet.

GetWeekOfYear(DateTime, CalendarWeekRule, DayOfWeek)

Returnerar den vecka på året som innehåller datumet i det angivna DateTime värdet.

(Ärvd från Calendar)
GetYear(DateTime)

Returnerar året i den angivna DateTime.

IsLeapDay(Int32, Int32, Int32, Int32)

Avgör om det angivna datumet i den angivna eran är en skottdag.

IsLeapDay(Int32, Int32, Int32)

Avgör om det angivna datumet i den aktuella eran är en skottdag.

(Ärvd från Calendar)
IsLeapMonth(Int32, Int32, Int32)

Avgör om den angivna månaden under det angivna året i den angivna eran är en skottmånad.

IsLeapMonth(Int32, Int32)

Avgör om den angivna månaden under det angivna året i den aktuella eran är en skottmånad.

(Ärvd från Calendar)
IsLeapYear(Int32, Int32)

Avgör om det angivna året i den angivna eran är ett skottår.

IsLeapYear(Int32)

Avgör om det angivna året i den aktuella eran är ett skottår.

(Ärvd från Calendar)
MemberwiseClone()

Skapar en ytlig kopia av den aktuella Object.

(Ärvd från Object)
ToDateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Int32)

Returnerar ett DateTime som är inställt på angivet datum och tid i den angivna eran.

ToDateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32)

Returnerar ett DateTime som är inställt på angivet datum och tid i den aktuella eran.

(Ärvd från Calendar)
ToFourDigitYear(Int32)

Konverterar det angivna året till ett fyrsiffrigt år med hjälp TwoDigitYearMax av egenskapen för att fastställa lämpligt århundrade.

ToString()

Returnerar en sträng som representerar det aktuella objektet.

(Ärvd från Object)

Gäller för

Se även