DateTime DateTime DateTime DateTime Constructors

Definizione

Overload

DateTime(Int64) DateTime(Int64) DateTime(Int64) DateTime(Int64)

Inizializza una nuova istanza della struttura DateTime su un numero di tick specificato.Initializes a new instance of the DateTime structure to a specified number of ticks.

DateTime(Int64, DateTimeKind) DateTime(Int64, DateTimeKind) DateTime(Int64, DateTimeKind) DateTime(Int64, DateTimeKind)

Inizializza una nuova istanza della struttura DateTime su un numero specificato di tick e sull'ora UTC (Coordinated Universal Time) oppure sull'ora locale.Initializes a new instance of the DateTime structure to a specified number of ticks and to Coordinated Universal Time (UTC) or local time.

DateTime(Int32, Int32, Int32) DateTime(Int32, Int32, Int32) DateTime(Int32, Int32, Int32) DateTime(Int32, Int32, Int32)

Inizializza una nuova istanza della struttura DateTime su anno, mese e giorno specificati.Initializes a new instance of the DateTime structure to the specified year, month, and day.

DateTime(Int32, Int32, Int32, Calendar) DateTime(Int32, Int32, Int32, Calendar) DateTime(Int32, Int32, Int32, Calendar)

Inizializza una nuova istanza della struttura DateTime su anno, mese e giorno indicati per il calendario specificato.Initializes a new instance of the DateTime structure to the specified year, month, and day for the specified calendar.

DateTime(Int32, Int32, Int32, Int32, Int32, Int32) DateTime(Int32, Int32, Int32, Int32, Int32, Int32) DateTime(Int32, Int32, Int32, Int32, Int32, Int32) DateTime(Int32, Int32, Int32, Int32, Int32, Int32)

Inizializza una nuova istanza della struttura DateTime su anno, mese, giorno, ora, minuto e secondo specificati.Initializes a new instance of the DateTime structure to the specified year, month, day, hour, minute, and second.

DateTime(Int32, Int32, Int32, Int32, Int32, Int32, DateTimeKind) DateTime(Int32, Int32, Int32, Int32, Int32, Int32, DateTimeKind) DateTime(Int32, Int32, Int32, Int32, Int32, Int32, DateTimeKind) DateTime(Int32, Int32, Int32, Int32, Int32, Int32, DateTimeKind)

Inizializza una nuova istanza della struttura DateTime su anno, mese, giorno, ora, minuto, secondo e ora UTC (Coordinated Universal Time) oppure ora locale specificati.Initializes a new instance of the DateTime structure to the specified year, month, day, hour, minute, second, and Coordinated Universal Time (UTC) or local time.

DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Calendar) DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Calendar) DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Calendar)

Inizializza una nuova istanza della struttura DateTime su anno, mese, giorno, ora, minuto e secondo determinati per il calendario specificato.Initializes a new instance of the DateTime structure to the specified year, month, day, hour, minute, and second for the specified calendar.

DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32) DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32) DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32) DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32)

Inizializza una nuova istanza della struttura DateTime su anno, mese, giorno, ora, minuto, secondo e millisecondo specificati.Initializes a new instance of the DateTime structure to the specified year, month, day, hour, minute, second, and millisecond.

DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, DateTimeKind) DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, DateTimeKind) DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, DateTimeKind) DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, DateTimeKind)

Inizializza una nuova istanza della struttura DateTime su anno, mese, giorno, ora, minuto, secondo, millisecondo e ora UTC (Coordinated Universal Time) oppure ora locale specificati.Initializes a new instance of the DateTime structure to the specified year, month, day, hour, minute, second, millisecond, and Coordinated Universal Time (UTC) or local time.

DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Calendar) DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Calendar) DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Calendar)

Inizializza una nuova istanza della struttura DateTime su anno, mese, giorno, ora, minuto, secondo e millisecondo determinati per il calendario specificato.Initializes a new instance of the DateTime structure to the specified year, month, day, hour, minute, second, and millisecond for the specified calendar.

DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Calendar, DateTimeKind) DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Calendar, DateTimeKind) DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Calendar, DateTimeKind)

Inizializza una nuova istanza della struttura DateTime su anno, mese, giorno, ora, minuto, secondo, millisecondo e ora UTC (Coordinated Universal Time) oppure ora locale specificati per il calendario indicato.Initializes a new instance of the DateTime structure to the specified year, month, day, hour, minute, second, millisecond, and Coordinated Universal Time (UTC) or local time for the specified calendar.

DateTime(Int64) DateTime(Int64) DateTime(Int64) DateTime(Int64)

Inizializza una nuova istanza della struttura DateTime su un numero di tick specificato.Initializes a new instance of the DateTime structure to a specified number of ticks.

public:
 DateTime(long ticks);
public DateTime (long ticks);
new DateTime : int64 -> DateTime
Public Sub New (ticks As Long)

Parametri

ticks
Int64 Int64 Int64 Int64

Data e ora espresse come numero di intervalli da 100 nanosecondi trascorsi dalle ore 00.00.00.000 del 01 gennaio 0001 nel calendario gregoriano.A date and time expressed in the number of 100-nanosecond intervals that have elapsed since January 1, 0001 at 00:00:00.000 in the Gregorian calendar.

Eccezioni

Esempi

Nell'esempio seguente viene illustrato uno dei DateTime costruttori.The following example demonstrates one of the DateTime constructors.

// This example demonstrates the DateTime(Int64) constructor.
using namespace System;
using namespace System::Globalization;
int main()
{
   
   // Instead of using the implicit, default "G" date and time format string, we 
   // use a custom format string that aligns the results and inserts leading zeroes.
   String^ format = "{0}) The {1} date and time is {2:MM/dd/yyyy hh:mm:ss tt}";
   
   // Create a DateTime for the maximum date and time using ticks.
   DateTime dt1 = DateTime(DateTime::MaxValue.Ticks);
   
   // Create a DateTime for the minimum date and time using ticks.
   DateTime dt2 = DateTime(DateTime::MinValue.Ticks);
   
   // Create a custom DateTime for 7/28/1979 at 10:35:05 PM using a 
   // calendar based on the "en-US" culture, and ticks. 
   Int64 ticks = DateTime(1979,07,28,22,35,5,(gcnew CultureInfo( "en-US",false ))->Calendar).Ticks;
   DateTime dt3 = DateTime(ticks);
   Console::WriteLine( format, 1, "maximum", dt1 );
   Console::WriteLine( format, 2, "minimum", dt2 );
   Console::WriteLine( format, 3, "custom ", dt3 );
   Console::WriteLine( "\nThe custom date and time is created from {0:N0} ticks.", ticks );
}

/*
This example produces the following results:

1) The maximum date and time is 12/31/9999 11:59:59 PM
2) The minimum date and time is 01/01/0001 12:00:00 AM
3) The custom  date and time is 07/28/1979 10:35:05 PM

The custom date and time is created from 624,376,461,050,000,000 ticks.

*/
// This example demonstrates the DateTime(Int64) constructor.
using System;
using System.Globalization;

class Sample 
{
    public static void Main() 
    {
// Instead of using the implicit, default "G" date and time format string, we 
// use a custom format string that aligns the results and inserts leading zeroes.
    string format = "{0}) The {1} date and time is {2:MM/dd/yyyy hh:mm:ss tt}";

// Create a DateTime for the maximum date and time using ticks.
    DateTime dt1 = new DateTime(DateTime.MaxValue.Ticks);

// Create a DateTime for the minimum date and time using ticks.
    DateTime dt2 = new DateTime(DateTime.MinValue.Ticks);

// Create a custom DateTime for 7/28/1979 at 10:35:05 PM using a 
// calendar based on the "en-US" culture, and ticks. 
    long ticks = new DateTime(1979, 07, 28, 22, 35, 5, 
	new CultureInfo("en-US", false).Calendar).Ticks;
    DateTime dt3 = new DateTime(ticks);

    Console.WriteLine(format, 1, "maximum", dt1);
    Console.WriteLine(format, 2, "minimum", dt2);
    Console.WriteLine(format, 3, "custom ", dt3);
    Console.WriteLine("\nThe custom date and time is created from {0:N0} ticks.", ticks);
    }
}
/*
This example produces the following results:

1) The maximum date and time is 12/31/9999 11:59:59 PM
2) The minimum date and time is 01/01/0001 12:00:00 AM
3) The custom  date and time is 07/28/1979 10:35:05 PM

The custom date and time is created from 624,376,461,050,000,000 ticks.

*/
' This example demonstrates the DateTime(Int64) constructor.
Imports System
Imports System.Globalization
Imports Microsoft.VisualBasic

Class Sample
   Public Shared Sub Main()
      ' Instead of using the implicit, default "G" date and time format string, we 
      ' use a custom format string that aligns the results and inserts leading zeroes.
      Dim format As String = "{0}) The {1} date and time is {2:MM/dd/yyyy hh:mm:ss tt}"
      
      ' Create a DateTime for the maximum date and time using ticks.
      Dim dt1 As New DateTime(DateTime.MaxValue.Ticks)
      
      ' Create a DateTime for the minimum date and time using ticks.
      Dim dt2 As New DateTime(DateTime.MinValue.Ticks)
      
      ' Create a custom DateTime for 7/28/1979 at 10:35:05 PM using a 
      ' calendar based on the "en-US" culture, and ticks. 
      Dim ticks As Long = New DateTime(1979, 7, 28, 22, 35, 5, _
                                       New CultureInfo("en-US", False).Calendar).Ticks
      Dim dt3 As New DateTime(ticks)
      
      Console.WriteLine(format, 1, "maximum", dt1)
      Console.WriteLine(format, 2, "minimum", dt2)
      Console.WriteLine(format, 3, "custom ", dt3)
      Console.WriteLine(vbCrLf & "The custom date and time is created from {0:N0} ticks.", ticks)
   End Sub 'Main
End Class 'Sample
'
'This example produces the following results:
'
'1) The maximum date and time is 12/31/9999 11:59:59 PM
'2) The minimum date and time is 01/01/0001 12:00:00 AM
'3) The custom  date and time is 07/28/1979 10:35:05 PM
'
'The custom date and time is created from 624,376,461,050,000,000 ticks.
'

Commenti

La proprietà Kind viene inizializzata su Unspecified.The Kind property is initialized to Unspecified.

Per le applicazioni in cui è importante la portabilità dei dati di data e ora o un livello limitato di riconoscimento del fuso orario, è DateTimeOffset possibile usare il costruttore corrispondente.For applications in which portability of date and time data or a limited degree of time zone awareness is important, you can use the corresponding DateTimeOffset constructor.

DateTime(Int64, DateTimeKind) DateTime(Int64, DateTimeKind) DateTime(Int64, DateTimeKind) DateTime(Int64, DateTimeKind)

Inizializza una nuova istanza della struttura DateTime su un numero specificato di tick e sull'ora UTC (Coordinated Universal Time) oppure sull'ora locale.Initializes a new instance of the DateTime structure to a specified number of ticks and to Coordinated Universal Time (UTC) or local time.

public:
 DateTime(long ticks, DateTimeKind kind);
public DateTime (long ticks, DateTimeKind kind);
new DateTime : int64 * DateTimeKind -> DateTime
Public Sub New (ticks As Long, kind As DateTimeKind)

Parametri

ticks
Int64 Int64 Int64 Int64

Data e ora espresse come numero di intervalli da 100 nanosecondi trascorsi dalle ore 00.00.00.000 del 01 gennaio 0001 nel calendario gregoriano.A date and time expressed in the number of 100-nanosecond intervals that have elapsed since January 1, 0001 at 00:00:00.000 in the Gregorian calendar.

kind
DateTimeKind DateTimeKind DateTimeKind DateTimeKind

Uno dei valori di enumerazione che indica se ticks specifica un'ora locale, un'ora UTC (Coordinated Universal Time) o nessuna delle due.One of the enumeration values that indicates whether ticks specifies a local time, Coordinated Universal Time (UTC), or neither.

Eccezioni

kind non è uno dei valori di DateTimeKind.kind is not one of the DateTimeKind values.

Commenti

Per le applicazioni in cui è importante la portabilità dei dati di data e ora o un livello limitato di riconoscimento del fuso orario, è DateTimeOffset possibile usare il costruttore corrispondente.For applications in which portability of date and time data or a limited degree of time zone awareness is important, you can use the corresponding DateTimeOffset constructor.

DateTime(Int32, Int32, Int32) DateTime(Int32, Int32, Int32) DateTime(Int32, Int32, Int32) DateTime(Int32, Int32, Int32)

Inizializza una nuova istanza della struttura DateTime su anno, mese e giorno specificati.Initializes a new instance of the DateTime structure to the specified year, month, and day.

public:
 DateTime(int year, int month, int day);
public DateTime (int year, int month, int day);
new DateTime : int * int * int -> DateTime
Public Sub New (year As Integer, month As Integer, day As Integer)

Parametri

year
Int32 Int32 Int32 Int32

Anno (da 1 a 9999).The year (1 through 9999).

month
Int32 Int32 Int32 Int32

Mese (da 1 a 12).The month (1 through 12).

day
Int32 Int32 Int32 Int32

Giorno (da 1 al numero di giorni in month).The day (1 through the number of days in month).

Eccezioni

year è minore di 1 o maggiore di 9999.year is less than 1 or greater than 9999.

-oppure--or- month è minore di 1 o maggiore di 12.month is less than 1 or greater than 12.

-oppure--or- day è minore di 1 o maggiore del numero di giorni in month.day is less than 1 or greater than the number of days in month.

Esempi

Nell'esempio seguente viene usato DateTime(Int32, Int32, Int32) il costruttore per creare un' DateTime istanza di un valore.The following example uses the DateTime(Int32, Int32, Int32) constructor to instantiate a DateTime value. Nell'esempio viene inoltre illustrato che l'overload crea un DateTime valore il cui componente ora è uguale a mezzanotte (o 0:00).The example also illustrates that this overload creates a DateTime value whose time component equals midnight (or 0:00).

DateTime date1 = new DateTime(2010, 8, 18);
Console.WriteLine(date1.ToString());
// The example displays the following output:
//      8/18/2010 12:00:00 AM      
Dim date1 As New Date(2010, 8, 18)
Console.WriteLine(date1.ToString())
' The example displays the following output:
'      8/18/2010 12:00:00 AM      

Commenti

Questo costruttore interpreta year, monthe day come anno, mese e giorno nel calendario gregoriano.This constructor interprets year, month, and day as a year, month, and day in the Gregorian calendar. Per creare un'istanza DateTime di un valore usando l'anno, il mese e il giorno in un altro calendario DateTime(Int32, Int32, Int32, Calendar) , chiamare il costruttore.To instantiate a DateTime value by using the year, month, and day in another calendar, call the DateTime(Int32, Int32, Int32, Calendar) constructor.

L'ora del giorno per l'oggetto DateTime risultante è la mezzanotte (00:00:00).The time of day for the resulting DateTime is midnight (00:00:00). La proprietà Kind viene inizializzata su DateTimeKind.Unspecified.The Kind property is initialized to DateTimeKind.Unspecified.

DateTime(Int32, Int32, Int32, Calendar) DateTime(Int32, Int32, Int32, Calendar) DateTime(Int32, Int32, Int32, Calendar)

Inizializza una nuova istanza della struttura DateTime su anno, mese e giorno indicati per il calendario specificato.Initializes a new instance of the DateTime structure to the specified year, month, and day for the specified calendar.

public:
 DateTime(int year, int month, int day, System::Globalization::Calendar ^ calendar);
public DateTime (int year, int month, int day, System.Globalization.Calendar calendar);
new DateTime : int * int * int * System.Globalization.Calendar -> DateTime

Parametri

year
Int32 Int32 Int32 Int32

Anno (da 1 al numero di anni in calendar).The year (1 through the number of years in calendar).

month
Int32 Int32 Int32 Int32

Mese (da 1 al numero di mesi in calendar).The month (1 through the number of months in calendar).

day
Int32 Int32 Int32 Int32

Giorno (da 1 al numero di giorni in month).The day (1 through the number of days in month).

calendar
Calendar Calendar Calendar Calendar

Calendario usato per interpretare year, month e day.The calendar that is used to interpret year, month, and day.

Eccezioni

year non è compreso nell'intervallo supportato da calendar.year is not in the range supported by calendar.

-oppure--or- month è minore di 1 o maggiore del numero di mesi in calendar.month is less than 1 or greater than the number of months in calendar.

-oppure--or- day è minore di 1 o maggiore del numero di giorni in month.day is less than 1 or greater than the number of days in month.

Esempi

Nell'esempio seguente viene chiamato DateTime(Int32, Int32, Int32, Calendar) il costruttore due volte per creare DateTime un'istanza di due valori.The following example calls the DateTime(Int32, Int32, Int32, Calendar) constructor twice to instantiate two DateTime values. La prima chiamata crea un'istanza DateTime di un valore utilizzando PersianCalendar un oggetto.The first call instantiates a DateTime value by using a PersianCalendar object. Poiché il calendario persiano non può essere designato come calendario predefinito per le impostazioni cultura, la visualizzazione di una data nel calendario persiano richiede le PersianCalendar.GetMonthsingole PersianCalendar.GetDayOfMonthchiamate ai PersianCalendar.GetYear relativi metodi, e.Because the Persian calendar cannot be designated as the default calendar for a culture, displaying a date in the Persian calendar requires individual calls to its PersianCalendar.GetMonth, PersianCalendar.GetDayOfMonth, and PersianCalendar.GetYear methods. La seconda chiamata al costruttore crea un'istanza di DateTime un valore utilizzando un HijriCalendar oggetto.The second call to the constructor instantiates a DateTime value by using a HijriCalendar object. Nell'esempio le impostazioni cultura correnti vengono modificate in arabo (Siria) e il calendario predefinito delle impostazioni cultura correnti viene modificato nel calendario Hijri.The example changes the current culture to Arabic (Syria) and changes the current culture's default calendar to the Hijri calendar. Poiché Hijri è il calendario predefinito delle impostazioni cultura correnti, Console.WriteLine il metodo lo usa per formattare la data.Because Hijri is the current culture's default calendar, the Console.WriteLine method uses it to format the date. Quando le impostazioni cultura correnti precedenti (ovvero l'inglese (Stati Uniti) in questo caso) vengono ripristinate Console.WriteLine , il metodo usa il calendario gregoriano predefinito delle impostazioni cultura correnti per formattare la data.When the previous current culture (which is English (United States) in this case) is restored, the Console.WriteLine method uses the current culture's default Gregorian calendar to format the date.

using System;
using System.Globalization;
using System.Text.RegularExpressions;
using System.Threading;

public class Example
{
   public static void Main()
   {
      Console.WriteLine("Using the Persian Calendar:");
      PersianCalendar persian = new PersianCalendar();
      DateTime date1 = new DateTime(1389, 5, 27, persian);
      Console.WriteLine(date1.ToString());
      Console.WriteLine("{0}/{1}/{2}\n", persian.GetMonth(date1), 
                                       persian.GetDayOfMonth(date1), 
                                       persian.GetYear(date1));
      
      Console.WriteLine("Using the Hijri Calendar:");
      // Get current culture so it can later be restored.
      CultureInfo dftCulture = Thread.CurrentThread.CurrentCulture;
      
      // Define Hijri calendar.
      HijriCalendar hijri = new HijriCalendar();
      // Make ar-SY the current culture and Hijri the current calendar.
      Thread.CurrentThread.CurrentCulture = new CultureInfo("ar-SY");
      CultureInfo current = CultureInfo.CurrentCulture;
      current.DateTimeFormat.Calendar = hijri;
      string dFormat = current.DateTimeFormat.ShortDatePattern;
      // Ensure year is displayed as four digits.
      dFormat = Regex.Replace(dFormat, "/yy$", "/yyyy");
      current.DateTimeFormat.ShortDatePattern = dFormat;
      DateTime date2 = new DateTime(1431, 9, 9, hijri);
      Console.WriteLine("{0} culture using the {1} calendar: {2:d}", current, 
                        GetCalendarName(hijri), date2);
      
      // Restore previous culture.
      Thread.CurrentThread.CurrentCulture = dftCulture;
      Console.WriteLine("{0} culture using the {1} calendar: {2:d}", 
                        CultureInfo.CurrentCulture, 
                        GetCalendarName(CultureInfo.CurrentCulture.Calendar), 
                        date2); 
   }
   
   private static string GetCalendarName(Calendar cal)
   {
      return Regex.Match(cal.ToString(), "\\.(\\w+)Calendar").Groups[1].Value;
   }
}
// The example displays the following output:
//       Using the Persian Calendar:
//       8/18/2010 12:00:00 AM
//       5/27/1389
//       
//       Using the Hijri Calendar:
//       ar-SY culture using the Hijri calendar: 09/09/1431
//       en-US culture using the Gregorian calendar: 8/18/2010
Imports System.Globalization
Imports System.Text.RegularExpressions
Imports System.Threading

Module Example
   Public Sub Main()
      Console.WriteLine("Using the Persian Calendar:")
      Dim persian As New PersianCalendar()
      Dim date1 As New Date(1389, 5, 27, persian)
      Console.WriteLine(date1.ToString())
      Console.WriteLine("{0}/{1}/{2}", persian.GetMonth(date1), _
                                       persian.GetDayOfMonth(date1), _
                                       persian.GetYear(date1))
      Console.WriteLine()
      
      Console.WriteLine("Using the Hijri Calendar:")
      ' Get current culture so it can later be restored.
      Dim dftCulture As CultureInfo = Thread.CurrentThread.CurrentCulture
      
      ' Define Hijri calendar.
      Dim hijri As New HijriCalendar()
      ' Make ar-SY the current culture and Hijri the current calendar.
      Thread.CurrentThread.CurrentCulture = New CultureInfo("ar-SY")
      Dim current As CultureInfo = CultureInfo.CurrentCulture
      current.DateTimeFormat.Calendar = hijri
      Dim dFormat As String = current.DateTimeFormat.ShortDatePattern
      ' Ensure year is displayed as four digits.
      dFormat = Regex.Replace(dFormat, "/yy$", "/yyyy")
      current.DateTimeFormat.ShortDatePattern = dFormat
      Dim date2 As New Date(1431, 9, 9, hijri)
      Console.WriteLine("{0} culture using the {1} calendar: {2:d}", current, _
                        GetCalendarName(hijri), date2) 
      
      ' Restore previous culture.
      Thread.CurrentThread.CurrentCulture = dftCulture
      Console.WriteLine("{0} culture using the {1} calendar: {2:d}", _
                        CultureInfo.CurrentCulture, _
                        GetCalendarName(CultureInfo.CurrentCulture.Calendar), _
                        date2) 
   End Sub
   
   Private Function GetCalendarName(cal As Calendar) As String
      Return Regex.Match(cal.ToString(), "\.(\w+)Calendar").Groups(1).Value
   End Function
End Module
' The example displays the following output:
'       Using the Persian Calendar:
'       8/18/2010 12:00:00 AM
'       5/27/1389
'       
'       Using the Hijri Calendar:
'       ar-SY culture using the Hijri calendar: 09/09/1431
'       en-US culture using the Gregorian calendar: 8/18/2010

Commenti

L'ora del giorno per l'oggetto DateTime risultante è la mezzanotte (00:00:00).The time of day for the resulting DateTime is midnight (00:00:00). La proprietà Kind viene inizializzata su Unspecified.The Kind property is initialized to Unspecified.

I valori consentiti yearper month, e day dipendono calendarda.The allowable values for year, month, and day depend on calendar. Viene generata un'eccezione se la data e l'ora specificate non possono essere calendarespresse usando.An exception is thrown if the specified date and time cannot be expressed using calendar.

Importante

Le ere nel calendario giapponese sono basate sul regno dell'imperatore e pertanto è previsto che cambino.Eras in the Japanese calendars are based on the emperor's reign and are therefore expected to change. Ad esempio, il 1° maggio 2019 contraddistingue l'inizio dell'era Reiwa in JapaneseCalendar e JapaneseLunisolarCalendar.For example, May 1, 2019 marked the beginning of the Reiwa era in the JapaneseCalendar and JapaneseLunisolarCalendar. Questo cambio di era interessa tutte le applicazioni che usano questi calendari.Such a change of era affects all applications that use these calendars. Vedere Handling a new era in the Japanese calendar in .NET (Gestione di una nuova era nel calendario giapponese in .NET) per altre informazioni e per determinare se le proprie applicazioni sono interessate dal cambio.See Handling a new era in the Japanese calendar in .NET for more information and to determine whether your applications are affected. Vedere Prepare your application for the Japanese era change (Preparare l'applicazione per il cambio di era giapponese) per informazioni sul test delle applicazioni nei sistemi Windows per verificare che siano pronte per il cambio di era.See Prepare your application for the Japanese era change for information on testing your applications on Windows systems to ensure their readiness for the era change. Vedere Utilizzo delle ere per informazioni sulle funzionalità in .NET che supportano calendari con più ere e per le procedure consigliate per l'uso dei calendari che supportano più ere.See Working with eras for features in .NET that support calendars with multiple eras and for best practices when working with calendars that support multiple eras.

Lo System.Globalization spazio dei nomi fornisce diversi calendari JulianCalendar, tra cui GregorianCalendar e.The System.Globalization namespace provides several calendars including GregorianCalendar and JulianCalendar.

Vedi anche

DateTime(Int32, Int32, Int32, Int32, Int32, Int32) DateTime(Int32, Int32, Int32, Int32, Int32, Int32) DateTime(Int32, Int32, Int32, Int32, Int32, Int32) DateTime(Int32, Int32, Int32, Int32, Int32, Int32)

Inizializza una nuova istanza della struttura DateTime su anno, mese, giorno, ora, minuto e secondo specificati.Initializes a new instance of the DateTime structure to the specified year, month, day, hour, minute, and second.

public:
 DateTime(int year, int month, int day, int hour, int minute, int second);
public DateTime (int year, int month, int day, int hour, int minute, int second);
new DateTime : int * int * int * int * int * int -> DateTime
Public Sub New (year As Integer, month As Integer, day As Integer, hour As Integer, minute As Integer, second As Integer)

Parametri

year
Int32 Int32 Int32 Int32

Anno (da 1 a 9999).The year (1 through 9999).

month
Int32 Int32 Int32 Int32

Mese (da 1 a 12).The month (1 through 12).

day
Int32 Int32 Int32 Int32

Giorno (da 1 al numero di giorni in month).The day (1 through the number of days in month).

hour
Int32 Int32 Int32 Int32

Ore (da 0 a 23).The hours (0 through 23).

minute
Int32 Int32 Int32 Int32

Minuti (da 0 a 59).The minutes (0 through 59).

second
Int32 Int32 Int32 Int32

Secondi (da 0 a 59).The seconds (0 through 59).

Eccezioni

year è minore di 1 o maggiore di 9999.year is less than 1 or greater than 9999.

-oppure--or- month è minore di 1 o maggiore di 12.month is less than 1 or greater than 12.

-oppure--or- day è minore di 1 o maggiore del numero di giorni in month.day is less than 1 or greater than the number of days in month.

In alternativa-or- hour è minore di 0 o maggiore di 23.hour is less than 0 or greater than 23.

In alternativa-or- minute è minore di 0 o maggiore di 59.minute is less than 0 or greater than 59.

-oppure--or- second è minore di 0 o maggiore di 59.second is less than 0 or greater than 59.

Esempi

Nell'esempio seguente viene usato DateTime il costruttore per creare un' DateTime istanza di un valore.The following example uses the DateTime constructor to instantiate a DateTime value.

DateTime date1 = new DateTime(2010, 8, 18, 16, 32, 0);
Console.WriteLine(date1.ToString());
// The example displays the following output:
//      8/18/2010 4:32:00 PM
Dim date1 As New Date(2010, 8, 18, 16, 32, 0)
Console.WriteLine(date1.ToString())
' The example displays the following output:
'      8/18/2010 4:32:00 PM

Commenti

La proprietà Kind viene inizializzata su Unspecified.The Kind property is initialized to Unspecified.

Questo costruttore interpretayear, monthe day come anno, mese e giorno nel calendario gregoriano.This constructor interpretsyear, month, and day as a year, month, and day in the Gregorian calendar. Per creare un'istanza DateTime di un valore usando l'anno, il mese e il giorno in un altro calendario DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Calendar) , chiamare il costruttore.To instantiate a DateTime value by using the year, month, and day in another calendar, call the DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Calendar) constructor.

Per le applicazioni in cui è importante la portabilità dei dati di data e ora o un livello limitato di riconoscimento del fuso orario, è DateTimeOffset possibile usare il costruttore corrispondente.For applications in which portability of date and time data or a limited degree of time zone awareness is important, you can use the corresponding DateTimeOffset constructor.

DateTime(Int32, Int32, Int32, Int32, Int32, Int32, DateTimeKind) DateTime(Int32, Int32, Int32, Int32, Int32, Int32, DateTimeKind) DateTime(Int32, Int32, Int32, Int32, Int32, Int32, DateTimeKind) DateTime(Int32, Int32, Int32, Int32, Int32, Int32, DateTimeKind)

Inizializza una nuova istanza della struttura DateTime su anno, mese, giorno, ora, minuto, secondo e ora UTC (Coordinated Universal Time) oppure ora locale specificati.Initializes a new instance of the DateTime structure to the specified year, month, day, hour, minute, second, and Coordinated Universal Time (UTC) or local time.

public:
 DateTime(int year, int month, int day, int hour, int minute, int second, DateTimeKind kind);
public DateTime (int year, int month, int day, int hour, int minute, int second, DateTimeKind kind);
new DateTime : int * int * int * int * int * int * DateTimeKind -> DateTime
Public Sub New (year As Integer, month As Integer, day As Integer, hour As Integer, minute As Integer, second As Integer, kind As DateTimeKind)

Parametri

year
Int32 Int32 Int32 Int32

Anno (da 1 a 9999).The year (1 through 9999).

month
Int32 Int32 Int32 Int32

Mese (da 1 a 12).The month (1 through 12).

day
Int32 Int32 Int32 Int32

Giorno (da 1 al numero di giorni in month).The day (1 through the number of days in month).

hour
Int32 Int32 Int32 Int32

Ore (da 0 a 23).The hours (0 through 23).

minute
Int32 Int32 Int32 Int32

Minuti (da 0 a 59).The minutes (0 through 59).

second
Int32 Int32 Int32 Int32

Secondi (da 0 a 59).The seconds (0 through 59).

kind
DateTimeKind DateTimeKind DateTimeKind DateTimeKind

Uno dei valori di enumerazione che indica se year, month, day, hour, minute e second specificano un'ora locale, un'ora UTC (Coordinated Universal Time) o nessuna delle due.One of the enumeration values that indicates whether year, month, day, hour, minute and second specify a local time, Coordinated Universal Time (UTC), or neither.

Eccezioni

year è minore di 1 o maggiore di 9999.year is less than 1 or greater than 9999.

-oppure--or- month è minore di 1 o maggiore di 12.month is less than 1 or greater than 12.

-oppure--or- day è minore di 1 o maggiore del numero di giorni in month.day is less than 1 or greater than the number of days in month.

-oppure--or- hour è minore di 0 o maggiore di 23.hour is less than 0 or greater than 23.

-oppure--or- minute è minore di 0 o maggiore di 59.minute is less than 0 or greater than 59.

-oppure--or- second è minore di 0 o maggiore di 59.second is less than 0 or greater than 59.

kind non è uno dei valori di DateTimeKind.kind is not one of the DateTimeKind values.

Esempi

Nell'esempio seguente viene usato DateTime(Int32, Int32, Int32, Int32, Int32, Int32, DateTimeKind) il costruttore per creare un' DateTime istanza di un valore.The following example uses the DateTime(Int32, Int32, Int32, Int32, Int32, Int32, DateTimeKind) constructor to instantiate a DateTime value.

DateTime date1 = new DateTime(2010, 8, 18, 16, 32, 0, DateTimeKind.Local);
Console.WriteLine("{0} {1}", date1, date1.Kind);
// The example displays the following output:
//      8/18/2010 4:32:00 PM Local
Dim date1 As New Date(2010, 8, 18, 16, 32, 0, DateTimeKind.Local)
Console.WriteLine("{0} {1}", date1, date1.Kind)
' The example displays the following output:
'      8/18/2010 4:32:00 PM Local

Commenti

Questo costruttore interpretayear, monthe day come anno, mese e giorno nel calendario gregoriano.This constructor interpretsyear, month, and day as a year, month, and day in the Gregorian calendar. Per creare un'istanza DateTime di un valore usando l'anno, il mese e il giorno in un altro calendario DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Calendar, DateTimeKind) , chiamare il costruttore.To instantiate a DateTime value by using the year, month, and day in another calendar, call the DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Calendar, DateTimeKind) constructor.

Per le applicazioni in cui è importante la portabilità dei dati di data e ora o un livello limitato di riconoscimento del fuso orario, è DateTimeOffset possibile usare il costruttore corrispondente.For applications in which portability of date and time data or a limited degree of time zone awareness is important, you can use the corresponding DateTimeOffset constructor.

DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Calendar) DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Calendar) DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Calendar)

Inizializza una nuova istanza della struttura DateTime su anno, mese, giorno, ora, minuto e secondo determinati per il calendario specificato.Initializes a new instance of the DateTime structure to the specified year, month, day, hour, minute, and second for the specified calendar.

public:
 DateTime(int year, int month, int day, int hour, int minute, int second, System::Globalization::Calendar ^ calendar);
public DateTime (int year, int month, int day, int hour, int minute, int second, System.Globalization.Calendar calendar);
new DateTime : int * int * int * int * int * int * System.Globalization.Calendar -> DateTime

Parametri

year
Int32 Int32 Int32 Int32

Anno (da 1 al numero di anni in calendar).The year (1 through the number of years in calendar).

month
Int32 Int32 Int32 Int32

Mese (da 1 al numero di mesi in calendar).The month (1 through the number of months in calendar).

day
Int32 Int32 Int32 Int32

Giorno (da 1 al numero di giorni in month).The day (1 through the number of days in month).

hour
Int32 Int32 Int32 Int32

Ore (da 0 a 23).The hours (0 through 23).

minute
Int32 Int32 Int32 Int32

Minuti (da 0 a 59).The minutes (0 through 59).

second
Int32 Int32 Int32 Int32

Secondi (da 0 a 59).The seconds (0 through 59).

calendar
Calendar Calendar Calendar Calendar

Calendario usato per interpretare year, month e day.The calendar that is used to interpret year, month, and day.

Eccezioni

year non è compreso nell'intervallo supportato da calendar.year is not in the range supported by calendar.

-oppure--or- month è minore di 1 o maggiore del numero di mesi in calendar.month is less than 1 or greater than the number of months in calendar.

-oppure--or- day è minore di 1 o maggiore del numero di giorni in month.day is less than 1 or greater than the number of days in month.

In alternativa-or- hour è minore di 0 o maggiore di 23hour is less than 0 or greater than 23 -oppure--or- minute è minore di 0 o maggiore di 59.minute is less than 0 or greater than 59.

-oppure--or- second è minore di 0 o maggiore di 59.second is less than 0 or greater than 59.

Esempi

Nell'esempio seguente viene chiamato DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Calendar) il costruttore due volte per creare DateTime un'istanza di due valori.The following example calls the DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Calendar) constructor twice to instantiate two DateTime values. La prima chiamata crea un'istanza DateTime di un valore utilizzando PersianCalendar un oggetto.The first call instantiates a DateTime value by using a PersianCalendar object. Poiché il calendario persiano non può essere designato come calendario predefinito per le impostazioni cultura, la visualizzazione di una data nel calendario persiano richiede le PersianCalendar.GetMonthsingole PersianCalendar.GetDayOfMonthchiamate ai PersianCalendar.GetYear relativi metodi, e.Because the Persian calendar cannot be designated as the default calendar for a culture, displaying a date in the Persian calendar requires individual calls to its PersianCalendar.GetMonth, PersianCalendar.GetDayOfMonth, and PersianCalendar.GetYear methods. La seconda chiamata al costruttore crea un'istanza di DateTime un valore utilizzando un HijriCalendar oggetto.The second call to the constructor instantiates a DateTime value by using a HijriCalendar object. Nell'esempio le impostazioni cultura correnti vengono modificate in arabo (Siria) e il calendario predefinito delle impostazioni cultura correnti viene modificato nel calendario Hijri.The example changes the current culture to Arabic (Syria) and changes the current culture's default calendar to the Hijri calendar. Poiché Hijri è il calendario predefinito delle impostazioni cultura correnti, Console.WriteLine il metodo lo usa per formattare la data.Because Hijri is the current culture's default calendar, the Console.WriteLine method uses it to format the date. Quando le impostazioni cultura correnti precedenti (ovvero l'inglese (Stati Uniti) in questo caso) vengono ripristinate Console.WriteLine , il metodo usa il calendario gregoriano predefinito delle impostazioni cultura correnti per formattare la data.When the previous current culture (which is English (United States) in this case) is restored, the Console.WriteLine method uses the current culture's default Gregorian calendar to format the date.

using System;
using System.Globalization;
using System.Text.RegularExpressions;
using System.Threading;

public class Example
{
   public static void Main()
   {
      Console.WriteLine("Using the Persian Calendar:");
      PersianCalendar persian = new PersianCalendar();
      DateTime date1 = new DateTime(1389, 5, 27, 16, 32, 0, persian);
      Console.WriteLine(date1.ToString());
      Console.WriteLine("{0}/{1}/{2} {3}{6}{4:D2}{6}{5:D2}\n", 
                                       persian.GetMonth(date1), 
                                       persian.GetDayOfMonth(date1), 
                                       persian.GetYear(date1), 
                                       persian.GetHour(date1), 
                                       persian.GetMinute(date1), 
                                       persian.GetSecond(date1), 
                                       DateTimeFormatInfo.CurrentInfo.TimeSeparator);

      Console.WriteLine("Using the Hijri Calendar:");
      // Get current culture so it can later be restored.
      CultureInfo dftCulture = Thread.CurrentThread.CurrentCulture;
      
      // Define Hijri calendar.
      HijriCalendar hijri = new HijriCalendar();
      // Make ar-SY the current culture and Hijri the current calendar.
      Thread.CurrentThread.CurrentCulture = new CultureInfo("ar-SY");
      CultureInfo current = CultureInfo.CurrentCulture;
      current.DateTimeFormat.Calendar = hijri;
      string dFormat = current.DateTimeFormat.ShortDatePattern;
      // Ensure year is displayed as four digits.
      dFormat = Regex.Replace(dFormat, "/yy$", "/yyyy");
      current.DateTimeFormat.ShortDatePattern = dFormat;
      DateTime date2 = new DateTime(1431, 9, 9, 16, 32, 18, hijri);
      Console.WriteLine("{0} culture using the {1} calendar: {2:g}", current, 
                        GetCalendarName(hijri), date2);
      
      // Restore previous culture.
      Thread.CurrentThread.CurrentCulture = dftCulture;
      Console.WriteLine("{0} culture using the {1} calendar: {2:g}", 
                        CultureInfo.CurrentCulture, 
                        GetCalendarName(CultureInfo.CurrentCulture.Calendar), 
                        date2); 
   }
   
   private static string GetCalendarName(Calendar cal)
   {
      return Regex.Match(cal.ToString(), "\\.(\\w+)Calendar").Groups[1].Value;
   }
}
// The example displays the following output:
//       Using the Persian Calendar:
//       8/18/2010 4:32:00 PM
//       5/27/1389 16:32:00
//       
//       Using the Hijri Calendar:
//       ar-SY culture using the Hijri calendar: 09/09/1431 04:32 م
//       en-US culture using the Gregorian calendar: 8/18/2010 4:32 PM
Imports System.Globalization
Imports System.Text.RegularExpressions
Imports System.Threading

Module Example
   Public Sub Main()
      Console.WriteLine("Using the Persian Calendar:")
      Dim persian As New PersianCalendar()
      Dim date1 As New Date(1389, 5, 27, 16, 32, 0, persian)
      Console.WriteLine(date1.ToString())
      Console.WriteLine("{0}/{1}/{2} {3}{6}{4:D2}{6}{5:D2}", persian.GetMonth(date1), _
                                       persian.GetDayOfMonth(date1), _
                                       persian.GetYear(date1), _
                                       persian.GetHour(date1), _
                                       persian.GetMinute(date1), _
                                       persian.GetSecond(date1), _
                                       DateTimeFormatInfo.CurrentInfo.TimeSeparator)
      Console.WriteLine()
      
      Console.WriteLine("Using the Hijri Calendar:")
      ' Get current culture so it can later be restored.
      Dim dftCulture As CultureInfo = Thread.CurrentThread.CurrentCulture
      
      ' Define Hijri calendar.
      Dim hijri As New HijriCalendar()
      ' Make ar-SY the current culture and Hijri the current calendar.
      Thread.CurrentThread.CurrentCulture = New CultureInfo("ar-SY")
      Dim current As CultureInfo = CultureInfo.CurrentCulture
      current.DateTimeFormat.Calendar = hijri
      Dim dFormat As String = current.DateTimeFormat.ShortDatePattern
      ' Ensure year is displayed as four digits.
      dFormat = Regex.Replace(dFormat, "/yy$", "/yyyy")
      current.DateTimeFormat.ShortDatePattern = dFormat
      Dim date2 As New Date(1431, 9, 9, 16, 32, 0, hijri)
      Console.WriteLine("{0} culture using the {1} calendar: {2:g}", current, _
                        GetCalendarName(hijri), date2) 

      ' Restore previous culture.
      Thread.CurrentThread.CurrentCulture = dftCulture
      Console.WriteLine("{0} culture using the {1} calendar: {2:g}", _
                        CultureInfo.CurrentCulture, _
                        GetCalendarName(CultureInfo.CurrentCulture.Calendar), _
                        date2) 
   End Sub
   
   Private Function GetCalendarName(cal As Calendar) As String
      Return Regex.Match(cal.ToString(), "\.(\w+)Calendar").Groups(1).Value
   End Function
End Module
' The example displays the following output:
'       Using the Persian Calendar:
'       8/18/2010 4:32:00 PM
'       5/27/1389 16:32:00
'       
'       Using the Hijri Calendar:
'       ar-SY culture using the Hijri calendar: 09/09/1431 04:32 م
'       en-US culture using the Gregorian calendar: 8/18/2010 4:32 PM

Commenti

La proprietà Kind viene inizializzata su Unspecified.The Kind property is initialized to Unspecified.

I valori consentiti yearper month, e day dipendono calendarda.The allowable values for year, month, and day depend on calendar. Viene generata un'eccezione se la data e l'ora specificate non possono essere calendarespresse usando.An exception is thrown if the specified date and time cannot be expressed using calendar.

Importante

Le ere nel calendario giapponese sono basate sul regno dell'imperatore e pertanto è previsto che cambino.Eras in the Japanese calendars are based on the emperor's reign and are therefore expected to change. Ad esempio, il 1° maggio 2019 contraddistingue l'inizio dell'era Reiwa in JapaneseCalendar e JapaneseLunisolarCalendar.For example, May 1, 2019 marked the beginning of the Reiwa era in the JapaneseCalendar and JapaneseLunisolarCalendar. Questo cambio di era interessa tutte le applicazioni che usano questi calendari.Such a change of era affects all applications that use these calendars. Vedere Handling a new era in the Japanese calendar in .NET (Gestione di una nuova era nel calendario giapponese in .NET) per altre informazioni e per determinare se le proprie applicazioni sono interessate dal cambio.See Handling a new era in the Japanese calendar in .NET for more information and to determine whether your applications are affected. Vedere Prepare your application for the Japanese era change (Preparare l'applicazione per il cambio di era giapponese) per informazioni sul test delle applicazioni nei sistemi Windows per verificare che siano pronte per il cambio di era.See Prepare your application for the Japanese era change for information on testing your applications on Windows systems to ensure their readiness for the era change. Vedere Utilizzo delle ere per informazioni sulle funzionalità in .NET che supportano calendari con più ere e per le procedure consigliate per l'uso dei calendari che supportano più ere.See Working with eras for features in .NET that support calendars with multiple eras and for best practices when working with calendars that support multiple eras.

Lo System.Globalization spazio dei nomi fornisce diversi calendari JulianCalendar, tra cui GregorianCalendar e.The System.Globalization namespace provides several calendars including GregorianCalendar and JulianCalendar.

Vedi anche

DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32) DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32) DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32) DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32)

Inizializza una nuova istanza della struttura DateTime su anno, mese, giorno, ora, minuto, secondo e millisecondo specificati.Initializes a new instance of the DateTime structure to the specified year, month, day, hour, minute, second, and millisecond.

public:
 DateTime(int year, int month, int day, int hour, int minute, int second, int millisecond);
public DateTime (int year, int month, int day, int hour, int minute, int second, int millisecond);
new DateTime : int * int * int * int * int * int * int -> DateTime
Public Sub New (year As Integer, month As Integer, day As Integer, hour As Integer, minute As Integer, second As Integer, millisecond As Integer)

Parametri

year
Int32 Int32 Int32 Int32

Anno (da 1 a 9999).The year (1 through 9999).

month
Int32 Int32 Int32 Int32

Mese (da 1 a 12).The month (1 through 12).

day
Int32 Int32 Int32 Int32

Giorno (da 1 al numero di giorni in month).The day (1 through the number of days in month).

hour
Int32 Int32 Int32 Int32

Ore (da 0 a 23).The hours (0 through 23).

minute
Int32 Int32 Int32 Int32

Minuti (da 0 a 59).The minutes (0 through 59).

second
Int32 Int32 Int32 Int32

Secondi (da 0 a 59).The seconds (0 through 59).

millisecond
Int32 Int32 Int32 Int32

Millisecondi (da 0 a 999).The milliseconds (0 through 999).

Eccezioni

year è minore di 1 o maggiore di 9999.year is less than 1 or greater than 9999.

In alternativa-or- month è minore di 1 o maggiore di 12.month is less than 1 or greater than 12.

-oppure--or- day è minore di 1 o maggiore del numero di giorni in month.day is less than 1 or greater than the number of days in month.

-oppure--or- hour è minore di 0 o maggiore di 23.hour is less than 0 or greater than 23.

In alternativa-or- minute è minore di 0 o maggiore di 59.minute is less than 0 or greater than 59.

-oppure--or- second è minore di 0 o maggiore di 59.second is less than 0 or greater than 59.

In alternativa-or- millisecond è minore di 0 o maggiore di 999.millisecond is less than 0 or greater than 999.

Esempi

Nell'esempio seguente viene usato DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32) il costruttore per creare un' DateTime istanza di un valore.The following example uses the DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32) constructor to instantiate a DateTime value.

DateTime date1 = new DateTime(2010, 8, 18, 16, 32, 18, 500);
Console.WriteLine(date1.ToString("M/dd/yyyy h:mm:ss.fff tt"));
// The example displays the following output:
//      8/18/2010 4:32:18.500 PM
Dim date1 As New Date(2010, 8, 18, 16, 32, 18, 500)
Console.WriteLine(date1.ToString("M/dd/yyyy h:mm:ss.fff tt"))
' The example displays the following output:
'      8/18/2010 4:32:18.500 PM

Commenti

Questo costruttore interpretayear, monthe day come anno, mese e giorno nel calendario gregoriano.This constructor interpretsyear, month, and day as a year, month, and day in the Gregorian calendar. Per creare un'istanza DateTime di un valore usando l'anno, il mese e il giorno in un altro calendario DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Calendar) , chiamare il costruttore.To instantiate a DateTime value by using the year, month, and day in another calendar, call the DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Calendar) constructor.

La proprietà Kind viene inizializzata su Unspecified.The Kind property is initialized to Unspecified.

Per le applicazioni in cui è importante la portabilità dei dati di data e ora o un livello limitato di riconoscimento del fuso orario, è DateTimeOffset possibile usare il costruttore corrispondente.For applications in which portability of date and time data or a limited degree of time zone awareness is important, you can use the corresponding DateTimeOffset constructor.

Vedi anche

DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, DateTimeKind) DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, DateTimeKind) DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, DateTimeKind) DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, DateTimeKind)

Inizializza una nuova istanza della struttura DateTime su anno, mese, giorno, ora, minuto, secondo, millisecondo e ora UTC (Coordinated Universal Time) oppure ora locale specificati.Initializes a new instance of the DateTime structure to the specified year, month, day, hour, minute, second, millisecond, and Coordinated Universal Time (UTC) or local time.

public:
 DateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, DateTimeKind kind);
public DateTime (int year, int month, int day, int hour, int minute, int second, int millisecond, DateTimeKind kind);
new DateTime : int * int * int * int * int * int * int * DateTimeKind -> DateTime
Public Sub New (year As Integer, month As Integer, day As Integer, hour As Integer, minute As Integer, second As Integer, millisecond As Integer, kind As DateTimeKind)

Parametri

year
Int32 Int32 Int32 Int32

Anno (da 1 a 9999).The year (1 through 9999).

month
Int32 Int32 Int32 Int32

Mese (da 1 a 12).The month (1 through 12).

day
Int32 Int32 Int32 Int32

Giorno (da 1 al numero di giorni in month).The day (1 through the number of days in month).

hour
Int32 Int32 Int32 Int32

Ore (da 0 a 23).The hours (0 through 23).

minute
Int32 Int32 Int32 Int32

Minuti (da 0 a 59).The minutes (0 through 59).

second
Int32 Int32 Int32 Int32

Secondi (da 0 a 59).The seconds (0 through 59).

millisecond
Int32 Int32 Int32 Int32

Millisecondi (da 0 a 999).The milliseconds (0 through 999).

kind
DateTimeKind DateTimeKind DateTimeKind DateTimeKind

Uno dei valori di enumerazione che indica se year, month, day, hour, minute, second e millisecond specificano un'ora locale, un'ora UTC (Coordinated Universal Time) o nessuna delle due.One of the enumeration values that indicates whether year, month, day, hour, minute, second, and millisecond specify a local time, Coordinated Universal Time (UTC), or neither.

Eccezioni

year è minore di 1 o maggiore di 9999.year is less than 1 or greater than 9999.

-oppure--or- month è minore di 1 o maggiore di 12.month is less than 1 or greater than 12.

In alternativa-or- day è minore di 1 o maggiore del numero di giorni in month.day is less than 1 or greater than the number of days in month.

-oppure--or- hour è minore di 0 o maggiore di 23.hour is less than 0 or greater than 23.

-oppure--or- minute è minore di 0 o maggiore di 59.minute is less than 0 or greater than 59.

-oppure--or- second è minore di 0 o maggiore di 59.second is less than 0 or greater than 59.

-oppure--or- millisecond è minore di 0 o maggiore di 999.millisecond is less than 0 or greater than 999.

kind non è uno dei valori di DateTimeKind.kind is not one of the DateTimeKind values.

Esempi

Nell'esempio seguente viene usato DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, DateTimeKind) il costruttore per creare un' DateTime istanza di un valore.The following example uses the DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, DateTimeKind) constructor to instantiate a DateTime value.

DateTime date1 = new DateTime(2010, 8, 18, 16, 32, 18, 500, 
                              DateTimeKind.Local);
Console.WriteLine("{0:M/dd/yyyy h:mm:ss.fff tt} {1}", date1, date1.Kind);
// The example displays the following output:
//      8/18/2010 4:32:18.500 PM Local
Dim date1 As New Date(2010, 8, 18, 16, 32, 18, 500, DateTimeKind.Local)
Console.WriteLine("{0:M/dd/yyyy h:mm:ss.fff tt} {1}", date1, date1.Kind)
' The example displays the following output:
'      8/18/2010 4:32:18.500 PM Local

Commenti

Questo costruttore interpretayear, monthe day come anno, mese e giorno nel calendario gregoriano.This constructor interpretsyear, month, and day as a year, month, and day in the Gregorian calendar. Per creare un'istanza DateTime di un valore usando l'anno, il mese e il giorno in un altro calendario DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Calendar, DateTimeKind) , chiamare il costruttore.To instantiate a DateTime value by using the year, month, and day in another calendar, call the DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Calendar, DateTimeKind) constructor.

Per le applicazioni in cui è importante la portabilità dei dati di data e ora o un livello limitato di riconoscimento del fuso orario, è DateTimeOffset possibile usare il costruttore corrispondente.For applications in which portability of date and time data or a limited degree of time zone awareness is important, you can use the corresponding DateTimeOffset constructor.

DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Calendar) DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Calendar) DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Calendar)

Inizializza una nuova istanza della struttura DateTime su anno, mese, giorno, ora, minuto, secondo e millisecondo determinati per il calendario specificato.Initializes a new instance of the DateTime structure to the specified year, month, day, hour, minute, second, and millisecond for the specified calendar.

public:
 DateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, System::Globalization::Calendar ^ calendar);
public DateTime (int year, int month, int day, int hour, int minute, int second, int millisecond, System.Globalization.Calendar calendar);
new DateTime : int * int * int * int * int * int * int * System.Globalization.Calendar -> DateTime

Parametri

year
Int32 Int32 Int32 Int32

Anno (da 1 al numero di anni in calendar).The year (1 through the number of years in calendar).

month
Int32 Int32 Int32 Int32

Mese (da 1 al numero di mesi in calendar).The month (1 through the number of months in calendar).

day
Int32 Int32 Int32 Int32

Giorno (da 1 al numero di giorni in month).The day (1 through the number of days in month).

hour
Int32 Int32 Int32 Int32

Ore (da 0 a 23).The hours (0 through 23).

minute
Int32 Int32 Int32 Int32

Minuti (da 0 a 59).The minutes (0 through 59).

second
Int32 Int32 Int32 Int32

Secondi (da 0 a 59).The seconds (0 through 59).

millisecond
Int32 Int32 Int32 Int32

Millisecondi (da 0 a 999).The milliseconds (0 through 999).

calendar
Calendar Calendar Calendar Calendar

Calendario usato per interpretare year, month e day.The calendar that is used to interpret year, month, and day.

Eccezioni

year non è compreso nell'intervallo supportato da calendar.year is not in the range supported by calendar.

-oppure--or- month è minore di 1 o maggiore del numero di mesi in calendar.month is less than 1 or greater than the number of months in calendar.

In alternativa-or- day è minore di 1 o maggiore del numero di giorni in month.day is less than 1 or greater than the number of days in month.

In alternativa-or- hour è minore di 0 o maggiore di 23.hour is less than 0 or greater than 23.

-oppure--or- minute è minore di 0 o maggiore di 59.minute is less than 0 or greater than 59.

-oppure--or- second è minore di 0 o maggiore di 59.second is less than 0 or greater than 59.

-oppure--or- millisecond è minore di 0 o maggiore di 999.millisecond is less than 0 or greater than 999.

Esempi

Nell'esempio seguente viene chiamato DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Calendar) il costruttore due volte per creare DateTime un'istanza di due valori.The following example calls the DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Calendar) constructor twice to instantiate two DateTime values. La prima chiamata crea un'istanza DateTime di un valore utilizzando PersianCalendar un oggetto.The first call instantiates a DateTime value by using a PersianCalendar object. Poiché il calendario persiano non può essere designato come calendario predefinito per le impostazioni cultura, la visualizzazione di una data nel calendario persiano richiede le PersianCalendar.GetMonthsingole PersianCalendar.GetDayOfMonthchiamate ai PersianCalendar.GetYear relativi metodi, e.Because the Persian calendar cannot be designated as the default calendar for a culture, displaying a date in the Persian calendar requires individual calls to its PersianCalendar.GetMonth, PersianCalendar.GetDayOfMonth, and PersianCalendar.GetYear methods. La seconda chiamata al costruttore crea un'istanza di DateTime un valore utilizzando un HijriCalendar oggetto.The second call to the constructor instantiates a DateTime value by using a HijriCalendar object. Nell'esempio le impostazioni cultura correnti vengono modificate in arabo (Siria) e il calendario predefinito delle impostazioni cultura correnti viene modificato nel calendario Hijri.The example changes the current culture to Arabic (Syria) and changes the current culture's default calendar to the Hijri calendar. Poiché Hijri è il calendario predefinito delle impostazioni cultura correnti, Console.WriteLine il metodo lo usa per formattare la data.Because Hijri is the current culture's default calendar, the Console.WriteLine method uses it to format the date. Quando le impostazioni cultura correnti precedenti (ovvero l'inglese (Stati Uniti) in questo caso) vengono ripristinate Console.WriteLine , il metodo usa il calendario gregoriano predefinito delle impostazioni cultura correnti per formattare la data.When the previous current culture (which is English (United States) in this case) is restored, the Console.WriteLine method uses the current culture's default Gregorian calendar to format the date.

using System;
using System.Globalization;
using System.Text.RegularExpressions;
using System.Threading;

public class Example
{
   public static void Main()
   {
      Console.WriteLine("Using the Persian Calendar:");
      PersianCalendar persian = new PersianCalendar();
      DateTime date1 = new DateTime(1389, 5, 27, 16, 32, 18, 500, persian);
      Console.WriteLine(date1.ToString("M/dd/yyyy h:mm:ss.fff tt"));
      Console.WriteLine("{0}/{1}/{2} {3}{7}{4:D2}{7}{5:D2}.{6:G3}\n", 
                                       persian.GetMonth(date1), 
                                       persian.GetDayOfMonth(date1), 
                                       persian.GetYear(date1), 
                                       persian.GetHour(date1), 
                                       persian.GetMinute(date1), 
                                       persian.GetSecond(date1), 
                                       persian.GetMilliseconds(date1), 
                                       DateTimeFormatInfo.CurrentInfo.TimeSeparator);

      Console.WriteLine("Using the Hijri Calendar:");
      // Get current culture so it can later be restored.
      CultureInfo dftCulture = Thread.CurrentThread.CurrentCulture;
      
      // Define strings for use in composite formatting.
      string dFormat; 
      string fmtString; 
      // Define Hijri calendar.
      HijriCalendar hijri = new HijriCalendar();
      // Make ar-SY the current culture and Hijri the current calendar.
      Thread.CurrentThread.CurrentCulture = new CultureInfo("ar-SY");
      CultureInfo current = CultureInfo.CurrentCulture;
      current.DateTimeFormat.Calendar = hijri;
      dFormat = current.DateTimeFormat.ShortDatePattern;
      // Ensure year is displayed as four digits.
      dFormat = Regex.Replace(dFormat, "/yy$", "/yyyy") + " H:mm:ss.fff";
      fmtString = "{0} culture using the {1} calendar: {2:" + dFormat + "}";
      DateTime date2 = new DateTime(1431, 9, 9, 16, 32, 18, 500, hijri);
      Console.WriteLine(fmtString, current, GetCalendarName(hijri), date2);
      
      // Restore previous culture.
      Thread.CurrentThread.CurrentCulture = dftCulture;
      dFormat = DateTimeFormatInfo.CurrentInfo.ShortDatePattern +" H:mm:ss.fff";
      fmtString = "{0} culture using the {1} calendar: {2:" + dFormat + "}";
      Console.WriteLine(fmtString, 
                        CultureInfo.CurrentCulture, 
                        GetCalendarName(CultureInfo.CurrentCulture.Calendar), 
                        date2); 
   }
   
   private static string GetCalendarName(Calendar cal)
   {
      return Regex.Match(cal.ToString(), "\\.(\\w+)Calendar").Groups[1].Value;
   }
}
// The example displays the following output:
//       8/18/2010 4:32:18.500 PM
//       5/27/1389 16:32:18.500
//       
//       Using the Hijri Calendar:
//       ar-SY culture using the Hijri calendar: 09/09/1431 16:32:18.500
//       en-US culture using the Gregorian calendar: 8/18/2010 16:32:18.500
Imports System.Globalization
Imports System.Text.RegularExpressions
Imports System.Threading

Module Example
   Public Sub Main()
      Console.WriteLine("Using the Persian Calendar:")
      Dim persian As New PersianCalendar()
      Dim date1 As New Date(1389, 5, 27, 16, 32, 18, 500, persian)
      Console.WriteLine(date1.ToString("M/dd/yyyy h:mm:ss.fff tt"))
      Console.WriteLine("{0}/{1}/{2} {3}{7}{4:D2}{7}{5:D2}.{6:G3}", _
                                       persian.GetMonth(date1), _
                                       persian.GetDayOfMonth(date1), _
                                       persian.GetYear(date1), _
                                       persian.GetHour(date1), _
                                       persian.GetMinute(date1), _
                                       persian.GetSecond(date1), _
                                       persian.GetMilliseconds(date1), _
                                       DateTimeFormatInfo.CurrentInfo.TimeSeparator)
      Console.WriteLine()
      
      Console.WriteLine("Using the Hijri Calendar:")
      ' Get current culture so it can later be restored.
      Dim dftCulture As CultureInfo = Thread.CurrentThread.CurrentCulture
      
      ' Define strings for use in composite formatting.
      Dim dFormat As String 
      Dim fmtString As String 
      ' Define Hijri calendar.
      Dim hijri As New HijriCalendar()
      ' Make ar-SY the current culture and Hijri the current calendar.
      Thread.CurrentThread.CurrentCulture = New CultureInfo("ar-SY")
      Dim current As CultureInfo = CultureInfo.CurrentCulture
      current.DateTimeFormat.Calendar = hijri
      dFormat = current.DateTimeFormat.ShortDatePattern
      ' Ensure year is displayed as four digits.
      dFormat = Regex.Replace(dFormat, "/yy$", "/yyyy") + " H:mm:ss.fff"
      fmtString = "{0} culture using the {1} calendar: {2:" + dFormat + "}"
      Dim date2 As New Date(1431, 9, 9, 16, 32, 18, 500, hijri)
      Console.WriteLine(fmtString, current, GetCalendarName(hijri), date2) 

      ' Restore previous culture.
      Thread.CurrentThread.CurrentCulture = dftCulture
      dFormat = DateTimeFormatInfo.CurrentInfo.ShortDatePattern +" H:mm:ss.fff"
      fmtString = "{0} culture using the {1} calendar: {2:" + dFormat + "}"
      Console.WriteLine(fmtString, CultureInfo.CurrentCulture, _
                        GetCalendarName(CultureInfo.CurrentCulture.Calendar), _
                        date2) 
   End Sub
   
   Private Function GetCalendarName(cal As Calendar) As String
      Return Regex.Match(cal.ToString(), "\.(\w+)Calendar").Groups(1).Value
   End Function
End Module
' The example displays the following output:
'       Using the Persian Calendar:
'       8/18/2010 4:32:18.500 PM
'       5/27/1389 16:32:18.500
'       
'       Using the Hijri Calendar:
'       ar-SY culture using the Hijri calendar: 09/09/1431 16:32:18.500
'       en-US culture using the Gregorian calendar: 8/18/2010 16:32:18.500

Commenti

La proprietà Kind viene inizializzata su Unspecified.The Kind property is initialized to Unspecified.

I valori consentiti yearper month, e day dipendono calendarda.The allowable values for year, month, and day depend on calendar. Viene generata un'eccezione se la data e l'ora specificate non possono essere calendarespresse usando.An exception is thrown if the specified date and time cannot be expressed using calendar.

Per le applicazioni in cui è importante la portabilità dei dati di data e ora o un livello limitato di riconoscimento del fuso orario, è DateTimeOffset possibile usare il costruttore corrispondente.For applications in which portability of date and time data or a limited degree of time zone awareness is important, you can use the corresponding DateTimeOffset constructor.

Importante

Le ere nel calendario giapponese sono basate sul regno dell'imperatore e pertanto è previsto che cambino.Eras in the Japanese calendars are based on the emperor's reign and are therefore expected to change. Ad esempio, il 1° maggio 2019 contraddistingue l'inizio dell'era Reiwa in JapaneseCalendar e JapaneseLunisolarCalendar.For example, May 1, 2019 marked the beginning of the Reiwa era in the JapaneseCalendar and JapaneseLunisolarCalendar. Questo cambio di era interessa tutte le applicazioni che usano questi calendari.Such a change of era affects all applications that use these calendars. Vedere Handling a new era in the Japanese calendar in .NET (Gestione di una nuova era nel calendario giapponese in .NET) per altre informazioni e per determinare se le proprie applicazioni sono interessate dal cambio.See Handling a new era in the Japanese calendar in .NET for more information and to determine whether your applications are affected. Vedere Prepare your application for the Japanese era change (Preparare l'applicazione per il cambio di era giapponese) per informazioni sul test delle applicazioni nei sistemi Windows per verificare che siano pronte per il cambio di era.See Prepare your application for the Japanese era change for information on testing your applications on Windows systems to ensure their readiness for the era change. Vedere Utilizzo delle ere per informazioni sulle funzionalità in .NET che supportano calendari con più ere e per le procedure consigliate per l'uso dei calendari che supportano più ere.See Working with eras for features in .NET that support calendars with multiple eras and for best practices when working with calendars that support multiple eras.

Lo System.Globalization spazio dei nomi fornisce diversi calendari JulianCalendar, tra cui GregorianCalendar e.The System.Globalization namespace provides several calendars including GregorianCalendar and JulianCalendar.

Vedi anche

DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Calendar, DateTimeKind) DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Calendar, DateTimeKind) DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Calendar, DateTimeKind)

Inizializza una nuova istanza della struttura DateTime su anno, mese, giorno, ora, minuto, secondo, millisecondo e ora UTC (Coordinated Universal Time) oppure ora locale specificati per il calendario indicato.Initializes a new instance of the DateTime structure to the specified year, month, day, hour, minute, second, millisecond, and Coordinated Universal Time (UTC) or local time for the specified calendar.

public:
 DateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, System::Globalization::Calendar ^ calendar, DateTimeKind kind);
public DateTime (int year, int month, int day, int hour, int minute, int second, int millisecond, System.Globalization.Calendar calendar, DateTimeKind kind);
new DateTime : int * int * int * int * int * int * int * System.Globalization.Calendar * DateTimeKind -> DateTime

Parametri

year
Int32 Int32 Int32 Int32

Anno (da 1 al numero di anni in calendar).The year (1 through the number of years in calendar).

month
Int32 Int32 Int32 Int32

Mese (da 1 al numero di mesi in calendar).The month (1 through the number of months in calendar).

day
Int32 Int32 Int32 Int32

Giorno (da 1 al numero di giorni in month).The day (1 through the number of days in month).

hour
Int32 Int32 Int32 Int32

Ore (da 0 a 23).The hours (0 through 23).

minute
Int32 Int32 Int32 Int32

Minuti (da 0 a 59).The minutes (0 through 59).

second
Int32 Int32 Int32 Int32

Secondi (da 0 a 59).The seconds (0 through 59).

millisecond
Int32 Int32 Int32 Int32

Millisecondi (da 0 a 999).The milliseconds (0 through 999).

calendar
Calendar Calendar Calendar Calendar

Calendario usato per interpretare year, month e day.The calendar that is used to interpret year, month, and day.

kind
DateTimeKind DateTimeKind DateTimeKind DateTimeKind

Uno dei valori di enumerazione che indica se year, month, day, hour, minute, second e millisecond specificano un'ora locale, un'ora UTC (Coordinated Universal Time) o nessuna delle due.One of the enumeration values that indicates whether year, month, day, hour, minute, second, and millisecond specify a local time, Coordinated Universal Time (UTC), or neither.

Eccezioni

year non è compreso nell'intervallo supportato da calendar.year is not in the range supported by calendar.

-oppure--or- month è minore di 1 o maggiore del numero di mesi in calendar.month is less than 1 or greater than the number of months in calendar.

-oppure--or- day è minore di 1 o maggiore del numero di giorni in month.day is less than 1 or greater than the number of days in month.

-oppure--or- hour è minore di 0 o maggiore di 23.hour is less than 0 or greater than 23.

-oppure--or- minute è minore di 0 o maggiore di 59.minute is less than 0 or greater than 59.

-oppure--or- second è minore di 0 o maggiore di 59.second is less than 0 or greater than 59.

-oppure--or- millisecond è minore di 0 o maggiore di 999.millisecond is less than 0 or greater than 999.

kind non è uno dei valori di DateTimeKind.kind is not one of the DateTimeKind values.

Esempi

Nell'esempio seguente viene chiamato DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Calendar, DateTimeKind) il costruttore due volte per creare DateTime un'istanza di due valori.The following example calls the DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Calendar, DateTimeKind) constructor twice to instantiate two DateTime values. La prima chiamata crea un'istanza DateTime di un valore utilizzando PersianCalendar un oggetto.The first call instantiates a DateTime value by using a PersianCalendar object. Poiché il calendario persiano non può essere designato come calendario predefinito per le impostazioni cultura, la visualizzazione di una data nel calendario persiano richiede le PersianCalendar.GetMonthsingole PersianCalendar.GetDayOfMonthchiamate ai PersianCalendar.GetYear relativi metodi, e.Because the Persian calendar cannot be designated as the default calendar for a culture, displaying a date in the Persian calendar requires individual calls to its PersianCalendar.GetMonth, PersianCalendar.GetDayOfMonth, and PersianCalendar.GetYear methods. La seconda chiamata al costruttore crea un'istanza di DateTime un valore utilizzando un HijriCalendar oggetto.The second call to the constructor instantiates a DateTime value by using a HijriCalendar object. Nell'esempio le impostazioni cultura correnti vengono modificate in arabo (Siria) e il calendario predefinito delle impostazioni cultura correnti viene modificato nel calendario Hijri.The example changes the current culture to Arabic (Syria) and changes the current culture's default calendar to the Hijri calendar. Poiché Hijri è il calendario predefinito delle impostazioni cultura correnti, Console.WriteLine il metodo lo usa per formattare la data.Because Hijri is the current culture's default calendar, the Console.WriteLine method uses it to format the date. Quando le impostazioni cultura correnti precedenti (ovvero l'inglese (Stati Uniti) in questo caso) vengono ripristinate Console.WriteLine , il metodo usa il calendario gregoriano predefinito delle impostazioni cultura correnti per formattare la data.When the previous current culture (which is English (United States) in this case) is restored, the Console.WriteLine method uses the current culture's default Gregorian calendar to format the date.

using System;
using System.Globalization;
using System.Text.RegularExpressions;
using System.Threading;

public class Example
{
   public static void Main()
   {
      Console.WriteLine("Using the Persian Calendar:");
      PersianCalendar persian = new PersianCalendar();
      DateTime date1 = new DateTime(1389, 5, 27, 16, 32, 18, 500, 
                                    persian, DateTimeKind.Local);
      Console.WriteLine("{0:M/dd/yyyy h:mm:ss.fff tt} {1}", date1, date1.Kind);
      Console.WriteLine("{0}/{1}/{2} {3}{8}{4:D2}{8}{5:D2}.{6:G3} {7}\n", 
                                       persian.GetMonth(date1), 
                                       persian.GetDayOfMonth(date1), 
                                       persian.GetYear(date1), 
                                       persian.GetHour(date1), 
                                       persian.GetMinute(date1), 
                                       persian.GetSecond(date1), 
                                       persian.GetMilliseconds(date1), 
                                       date1.Kind, 
                                       DateTimeFormatInfo.CurrentInfo.TimeSeparator);

      Console.WriteLine("Using the Hijri Calendar:");
      // Get current culture so it can later be restored.
      CultureInfo dftCulture = Thread.CurrentThread.CurrentCulture;
      
      // Define strings for use in composite formatting.
      string dFormat; 
      string fmtString; 
      // Define Hijri calendar.
      HijriCalendar hijri = new HijriCalendar();
      // Make ar-SY the current culture and Hijri the current calendar.
      Thread.CurrentThread.CurrentCulture = new CultureInfo("ar-SY");
      CultureInfo current = CultureInfo.CurrentCulture;
      current.DateTimeFormat.Calendar = hijri;
      dFormat = current.DateTimeFormat.ShortDatePattern;
      // Ensure year is displayed as four digits.
      dFormat = Regex.Replace(dFormat, "/yy$", "/yyyy") + " H:mm:ss.fff";
      fmtString = "{0} culture using the {1} calendar: {2:" + dFormat + "} {3}";
      DateTime date2 = new DateTime(1431, 9, 9, 16, 32, 18, 500, 
                                    hijri, DateTimeKind.Local);
      Console.WriteLine(fmtString, current, GetCalendarName(hijri), 
                        date2, date2.Kind);
      
      // Restore previous culture.
      Thread.CurrentThread.CurrentCulture = dftCulture;
      dFormat = DateTimeFormatInfo.CurrentInfo.ShortDatePattern +" H:mm:ss.fff";
      fmtString = "{0} culture using the {1} calendar: {2:" + dFormat + "} {3}";
      Console.WriteLine(fmtString, 
                        CultureInfo.CurrentCulture, 
                        GetCalendarName(CultureInfo.CurrentCulture.Calendar), 
                        date2, date2.Kind); 
   }
   
   private static string GetCalendarName(Calendar cal)
   {
      return Regex.Match(cal.ToString(), "\\.(\\w+)Calendar").Groups[1].Value;
   }
}
// The example displays the following output:
//    Using the Persian Calendar:
//    8/18/2010 4:32:18.500 PM Local
//    5/27/1389 16:32:18.500 Local
//    
//    Using the Hijri Calendar:
//    ar-SY culture using the Hijri calendar: 09/09/1431 16:32:18.500 Local
//    en-US culture using the Gregorian calendar: 8/18/2010 16:32:18.500 Local
Imports System.Globalization
Imports System.Text.RegularExpressions
Imports System.Threading

Module Example
   Public Sub Main()
      Console.WriteLine("Using the Persian Calendar:")
      Dim persian As New PersianCalendar()
      Dim date1 As New Date(1389, 5, 27, 16, 32, 18, 500, _
                            persian, DateTimeKind.Local)
      Console.WriteLine("{0:M/dd/yyyy h:mm:ss.fff tt} {1}", date1, date1.Kind)
      Console.WriteLine("{0}/{1}/{2} {3}{8}{4:D2}{8}{5:D2}.{6:G3} {7}", _
                                       persian.GetMonth(date1), _
                                       persian.GetDayOfMonth(date1), _
                                       persian.GetYear(date1), _
                                       persian.GetHour(date1), _
                                       persian.GetMinute(date1), _
                                       persian.GetSecond(date1), _
                                       persian.GetMilliseconds(date1), _
                                       date1.Kind, _
                                       DateTimeFormatInfo.CurrentInfo.TimeSeparator)
      Console.WriteLine()
      
      Console.WriteLine("Using the Hijri Calendar:")
      ' Get current culture so it can later be restored.
      Dim dftCulture As CultureInfo = Thread.CurrentThread.CurrentCulture
      
      ' Define strings for use in composite formatting.
      Dim dFormat As String 
      Dim fmtString As String 
      ' Define Hijri calendar.
      Dim hijri As New HijriCalendar()
      ' Make ar-SY the current culture and Hijri the current calendar.
      Thread.CurrentThread.CurrentCulture = New CultureInfo("ar-SY")
      Dim current As CultureInfo = CultureInfo.CurrentCulture
      current.DateTimeFormat.Calendar = hijri
      dFormat = current.DateTimeFormat.ShortDatePattern
      ' Ensure year is displayed as four digits.
      dFormat = Regex.Replace(dFormat, "/yy$", "/yyyy") + " H:mm:ss.fff"
      fmtString = "{0} culture using the {1} calendar: {2:" + dFormat + "} {3}"
      Dim date2 As New Date(1431, 9, 9, 16, 32, 18, 500, _
                            hijri, DateTimeKind.Local)
      Console.WriteLine(fmtString, current, GetCalendarName(hijri), _
                        date2, date2.Kind) 

      ' Restore previous culture.
      Thread.CurrentThread.CurrentCulture = dftCulture
      dFormat = DateTimeFormatInfo.CurrentInfo.ShortDatePattern +" H:mm:ss.fff"
      fmtString = "{0} culture using the {1} calendar: {2:" + dFormat + "} {3}"
      Console.WriteLine(fmtString, CultureInfo.CurrentCulture, _
                        GetCalendarName(CultureInfo.CurrentCulture.Calendar), _
                        date2, date2.Kind) 
   End Sub
   
   Private Function GetCalendarName(cal As Calendar) As String
      Return Regex.Match(cal.ToString(), "\.(\w+)Calendar").Groups(1).Value
   End Function
End Module
' The example displays the following output:
'       Using the Persian Calendar:
'       8/18/2010 4:32:18.500 PM
'       5/27/1389 16:32:18.500
'       
'       Using the Hijri Calendar:
'       ar-SY culture using the Hijri calendar: 09/09/1431 16:32:18.500
'       en-US culture using the Gregorian calendar: 8/18/2010 16:32:18.500

Commenti

I valori consentiti yearper monthi parametri day , calendar e dipendono dal parametro.The allowable values for year, month, and day parameters depend on the calendar parameter. Viene generata un'eccezione se la data e l'ora specificate non possono essere calendarespresse usando.An exception is thrown if the specified date and time cannot be expressed using calendar.

Per le applicazioni in cui è importante la portabilità dei dati di data e ora o un livello limitato di riconoscimento del fuso orario, è DateTimeOffset possibile usare il costruttore corrispondente.For applications in which portability of date and time data or a limited degree of time zone awareness is important, you can use the corresponding DateTimeOffset constructor.

Importante

Le ere nel calendario giapponese sono basate sul regno dell'imperatore e pertanto è previsto che cambino.Eras in the Japanese calendars are based on the emperor's reign and are therefore expected to change. Ad esempio, il 1° maggio 2019 contraddistingue l'inizio dell'era Reiwa in JapaneseCalendar e JapaneseLunisolarCalendar.For example, May 1, 2019 marked the beginning of the Reiwa era in the JapaneseCalendar and JapaneseLunisolarCalendar. Questo cambio di era interessa tutte le applicazioni che usano questi calendari.Such a change of era affects all applications that use these calendars. Vedere Handling a new era in the Japanese calendar in .NET (Gestione di una nuova era nel calendario giapponese in .NET) per altre informazioni e per determinare se le proprie applicazioni sono interessate dal cambio.See Handling a new era in the Japanese calendar in .NET for more information and to determine whether your applications are affected. Vedere Prepare your application for the Japanese era change (Preparare l'applicazione per il cambio di era giapponese) per informazioni sul test delle applicazioni nei sistemi Windows per verificare che siano pronte per il cambio di era.See Prepare your application for the Japanese era change for information on testing your applications on Windows systems to ensure their readiness for the era change. Vedere Utilizzo delle ere per informazioni sulle funzionalità in .NET che supportano calendari con più ere e per le procedure consigliate per l'uso dei calendari che supportano più ere.See Working with eras for features in .NET that support calendars with multiple eras and for best practices when working with calendars that support multiple eras.

Lo System.Globalization spazio dei nomi fornisce diversi calendari JulianCalendar, tra cui GregorianCalendar e.The System.Globalization namespace provides several calendars including GregorianCalendar and JulianCalendar.

Si applica a