Calendar Osztály
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
Az idő osztásokban, például hetekben, hónapokban és években kifejezve.
public ref class Calendar abstract
public ref class Calendar abstract : ICloneable
public abstract class Calendar
public abstract class Calendar : ICloneable
[System.Serializable]
public abstract class Calendar
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public abstract class Calendar : ICloneable
type Calendar = class
type Calendar = class
interface ICloneable
[<System.Serializable>]
type Calendar = class
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type Calendar = class
interface ICloneable
Public MustInherit Class Calendar
Public MustInherit Class Calendar
Implements ICloneable
- Öröklődés
-
Calendar
- Származtatott
- Attribútumok
- Megvalósítás
Példák
Az alábbi példakód az osztály tagjait Calendar mutatja be.
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
Megjegyzések
A naptár az időt egységekre osztja, például hetekre, hónapokra és évekre. Az osztások száma, hossza és kezdete minden naptárban eltérő.
Note
A naptárosztályok .NET való használatáról további információt a Naptárak használata című témakörben talál.
Az idő bármely pillanata numerikus értékek halmazaként jeleníthető meg egy adott naptár használatával. Például a gergelynaptárban (1999, 3, 20, 8, 46, 0, 0,0) a gergelynaptárban, vagyis 1999. március 20-án 8:46:00:0,0 időpontban történt. Egy implementáció Calendar az adott naptár tartományában lévő dátumokat megfeleltetheti egy hasonló numerikus értékkészletnek, és DateTime az ilyen számértékeket szöveges ábrázolásúra képezheti le a forrásból származó és Calendara DateTimeFormatInfo . A szöveges ábrázolás lehet kulturális szempontból érzékeny, például "8:46 1999. március 20.AD" a en-US kultúrához, vagy a kultúra érzéketlen, például "1999-03-20T08:46:00" ISO 8601 formátumban.
Egy Calendar implementáció meghatározhat egy vagy több korszakot. Az Calendar osztály számbavett egész számként azonosítja a korszakokat, ahol az aktuális kor (CurrentEra) értéke 0.
Important
A japán naptárak korszakai a császár uralkodásán alapulnak, ezért várhatóan megváltoznak. 2019. május 1-jén például a Reiwa-korszak kezdetét jelentette JapaneseCalendar és JapaneseLunisolarCalendar. Az ilyen korszakváltás minden olyan alkalmazást érint, amely ezeket a naptárakat használja. További információkért és annak megállapításához, hogy az alkalmazások érintettek-e, olvassa el az Új korszak kezelése a japán naptárban a .NET-ben című témakört. Az alkalmazások windowsos rendszereken való tesztelésével kapcsolatos információkért, amelyek biztosítják, hogy felkészültek legyenek a korszakváltásra, olvassa el az alkalmazás előkészítése a japán korszakváltásra című témakört. A több korszakot támogató naptárakat támogató .NET-funkciókért és a több korszakot támogató naptárak használatakor ajánlott eljárásokért lásd: Korszakok használata.
Ahhoz, hogy a naptári év és a föld a nap körüli tényleges idő közötti különbséget, vagy a hold a föld körül forog, a szökőévnek eltérő számú napja van a szokásos naptári évtől. Minden Calendar implementáció másként határozza meg a szökőéveket.
Konzisztencia esetén az egyes intervallumok első egysége (például az első hónap) az 1 értéket kapja.
A System.Globalization névtér a következő Calendar implementációkat tartalmazza:
Konstruktorok
| Name | Description |
|---|---|
| Calendar() |
Inicializálja a Calendar osztály új példányát. |
Mezők
| Name | Description |
|---|---|
| CurrentEra |
Az aktuális naptár aktuális korszakát jelöli. A mező értéke 0. |
Tulajdonságok
| Name | Description |
|---|---|
| AlgorithmType |
Egy értéket kap, amely jelzi, hogy az aktuális naptár napalapú, holdalapú vagy mindkettő kombinációja. |
| DaysInYearBeforeMinSupportedYear |
A tulajdonság által MinSupportedDateTime megadott évet megelőző év napjainak számát adja meg. |
| Eras |
Ha felül van bírálva egy származtatott osztályban, lekéri a korok listáját az aktuális naptárban. |
| IsReadOnly |
Beolvas egy értéket, amely jelzi, hogy az Calendar objektum írásvédett-e. |
| MaxSupportedDateTime |
Lekéri az objektum által Calendar támogatott legújabb dátumot és időpontot. |
| MinSupportedDateTime |
Az objektum által Calendar támogatott legkorábbi dátumot és időt kapja meg. |
| TwoDigitYearMax |
Lekéri vagy beállítja egy 100 éves tartomány utolsó évét, amelyet kétjegyű év jelölhet. |
Metódusok
| Name | Description |
|---|---|
| AddDays(DateTime, Int32) |
DateTime A megadott számú, a megadotttól DateTimetávol lévő napot adja vissza. |
| AddHours(DateTime, Int32) |
Azt a értéket adja DateTime vissza, amely a megadott számú órára van a megadotttól DateTimetávol. |
| AddMilliseconds(DateTime, Double) |
DateTime A megadott számú ezredmásodpercet adja vissza a megadotttól DateTimetávol. |
| AddMinutes(DateTime, Int32) |
Azt a értéket adja DateTime vissza, amely a megadott számú perc távolságra van a megadotttól DateTime. |
| AddMonths(DateTime, Int32) |
Ha egy származtatott osztályban felül van bírálva, a megadott számú hónapot adja vissza DateTime a megadotttól DateTimetávol. |
| AddSeconds(DateTime, Int32) |
DateTime A megadott DateTimeszámú másodpercnyi távolságra lévő értéket adja vissza. |
| AddWeeks(DateTime, Int32) |
DateTime A megadott számú, a megadotttól DateTimetávol lévő hetet adja vissza. |
| AddYears(DateTime, Int32) |
Ha egy származtatott osztályban felül van bírálva, a megadott számú évet adja vissza DateTime a megadotttól DateTimetávol. |
| Clone() |
Létrehoz egy új objektumot, amely az aktuális Calendar objektum másolata. |
| Equals(Object) |
Meghatározza, hogy a megadott objektum egyenlő-e az aktuális objektummal. (Öröklődés forrása Object) |
| GetDayOfMonth(DateTime) |
Ha felül van bírálva egy származtatott osztályban, a megadott DateTimehónap napját adja vissza. |
| GetDayOfWeek(DateTime) |
Ha felül van bírálva egy származtatott osztályban, a megadott hét DateTimenapját adja vissza. |
| GetDayOfYear(DateTime) |
Ha egy származtatott osztályban felül van bírálva, a megadott DateTimeév napját adja vissza. |
| GetDaysInMonth(Int32, Int32, Int32) |
Ha egy származtatott osztályban felül van bírálva, a megadott hónap, év és korszak napjainak számát adja vissza. |
| GetDaysInMonth(Int32, Int32) |
Az aktuális időszak megadott hónapjának és évének napjainak számát adja vissza. |
| GetDaysInYear(Int32, Int32) |
Ha egy származtatott osztályban felül van bírálva, a megadott év és időszak napjainak számát adja vissza. |
| GetDaysInYear(Int32) |
Az aktuális korszak megadott évében lévő napok számát adja eredményül. |
| GetEra(DateTime) |
Ha felül van bírálva egy származtatott osztályban, a megadott DateTimekort adja vissza. |
| GetHashCode() |
Ez az alapértelmezett kivonatoló függvény. (Öröklődés forrása Object) |
| GetHour(DateTime) |
A megadott DateTimeóraértéket adja vissza. |
| GetLeapMonth(Int32, Int32) |
Kiszámítja egy adott év és korszak szökőhónapjait. |
| GetLeapMonth(Int32) |
Kiszámítja egy adott év szökőhónapjait. |
| GetMilliseconds(DateTime) |
A megadott DateTimeérték ezredmásodpercét adja vissza. |
| GetMinute(DateTime) |
A megadott DateTimepercértéket adja vissza. |
| GetMonth(DateTime) |
Ha felül van bírálva egy származtatott osztályban, a megadott DateTimehónap értékét adja vissza. |
| GetMonthsInYear(Int32, Int32) |
Ha egy származtatott osztályban felül van bírálva, a megadott év hónapjainak számát adja vissza a megadott korszakban. |
| GetMonthsInYear(Int32) |
A megadott év hónapjainak számát adja vissza az aktuális korszakban. |
| GetSecond(DateTime) |
A megadott DateTimemásodpercértéket adja vissza. |
| GetType() |
Lekéri az Type aktuális példányt. (Öröklődés forrása Object) |
| GetWeekOfYear(DateTime, CalendarWeekRule, DayOfWeek) |
Az év hetét adja vissza, amely tartalmazza a megadott DateTime értékben szereplő dátumot. |
| GetYear(DateTime) |
Ha egy származtatott osztályban felül van bírálva, a megadott DateTimeév értékét adja vissza. |
| IsLeapDay(Int32, Int32, Int32, Int32) |
Ha egy származtatott osztályban felül van bírálva, meghatározza, hogy a megadott dátum szökőnap-e. |
| IsLeapDay(Int32, Int32, Int32) |
Meghatározza, hogy az aktuális korszakban megadott dátum szökőnap-e. |
| IsLeapMonth(Int32, Int32, Int32) |
Ha egy származtatott osztályban felül van bírálva, meghatározza, hogy a megadott évben megadott hónap szökőhónap-e. |
| IsLeapMonth(Int32, Int32) |
Meghatározza, hogy a megadott év adott hónapja az aktuális korszakban szökőhónap-e. |
| IsLeapYear(Int32, Int32) |
Ha egy származtatott osztályban felül van bírálva, meghatározza, hogy a megadott korszakban megadott év szökőév-e. |
| IsLeapYear(Int32) |
Meghatározza, hogy a jelenlegi korszakban megadott év szökőév-e. |
| MemberwiseClone() |
Az aktuális Objectpéldány sekély másolatát hozza létre. (Öröklődés forrása Object) |
| ReadOnly(Calendar) |
A megadott Calendar objektum írásvédett verzióját adja vissza. |
| ToDateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Int32) |
Ha egy származtatott osztályban felül van bírálva, a megadott kor megadott dátumára és idejére beállított értéket ad vissza DateTime . |
| ToDateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32) |
DateTime Az aktuális korszakban megadott dátumra és időre beállított értéket adja vissza. |
| ToFourDigitYear(Int32) |
A megadott évet négyjegyű évszámmá alakítja a tulajdonság használatával a TwoDigitYearMax megfelelő évszázad meghatározásához. |
| ToString() |
Az aktuális objektumot jelképező sztringet ad vissza. (Öröklődés forrása Object) |
A következőre érvényes:
Lásd még
- DateTime
- DateTimeFormatInfo
- ChineseLunisolarCalendar
- EastAsianLunisolarCalendar
- GregorianCalendar
- HebrewCalendar
- HijriCalendar
- JapaneseCalendar
- JapaneseLunisolarCalendar
- JulianCalendar
- KoreanCalendar
- KoreanLunisolarCalendar
- PersianCalendar
- TaiwanCalendar
- TaiwanLunisolarCalendar
- ThaiBuddhistCalendar
- UmAlQuraCalendar
- Naptárak használata