DateTime Costruttori
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Inizializza una nuova istanza della struttura DateTime.
Overload
DateTime(Int64) |
Inizializza una nuova istanza della struttura DateTime su un numero di tick specificato. |
DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Int32, Calendar) |
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. |
DateTime(Int32, 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 per il calendario indicato. |
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. |
DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Int32) |
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. |
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. |
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. |
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. |
DateTime(Int32, 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. |
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. |
DateTime(Int32, Int32, Int32, Int32, Int32, Int32) |
Inizializza una nuova istanza della struttura DateTime su anno, mese, giorno, ora, minuto e secondo specificati. |
DateTime(Int32, Int32, Int32, Calendar) |
Inizializza una nuova istanza della struttura DateTime su anno, mese e giorno indicati per il calendario specificato. |
DateTime(Int32, Int32, Int32) |
Inizializza una nuova istanza della struttura DateTime su anno, mese e giorno specificati. |
DateTime(DateOnly, TimeOnly, DateTimeKind) |
Inizializza una nuova istanza della DateTime struttura nell'oggetto specificato DateOnly e TimeOnly rispetta l'oggetto specificato 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. |
DateTime(DateOnly, TimeOnly) |
Inizializza una nuova istanza della DateTime struttura nell'oggetto specificato DateOnly e TimeOnly. La nuova istanza avrà il Unspecified tipo . |
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. |
DateTime(Int64)
- Origine:
- DateTime.cs
- Origine:
- DateTime.cs
- Origine:
- DateTime.cs
Inizializza una nuova istanza della struttura DateTime su un numero di tick specificato.
public:
DateTime(long ticks);
public DateTime (long ticks);
new DateTime : int64 -> DateTime
Public Sub New (ticks As Long)
Parametri
- ticks
- 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.
Eccezioni
ticks
è minore di DateTime.MinValue o maggiore di DateTime.MaxValue.
Esempio
Nell'esempio seguente viene illustrato uno dei DateTime costruttori.
// 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.
open System
open System.Globalization
// Create a DateTime for the maximum date and time using ticks.
let dt1 = DateTime DateTime.MaxValue.Ticks
// Create a DateTime for the minimum date and time using ticks.
let 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.
let ticks = DateTime(1979, 07, 28, 22, 35, 5, CultureInfo("en-US", false).Calendar).Ticks
let dt3 = DateTime ticks
printfn $"""1) The maximum date and time is {dt1.ToString "MM-dd/yyyy hh:mm:ss tt"}"""
printfn $"""2) The minimum date and time is {dt2.ToString "MM/dd/yyyy hh:mm:ss tt"}"""
printfn $"""3) The custom date and time is {dt3.ToString "MM/dd/yyyy hh:mm:ss tt"}"""
printfn $"\nThe custom date and time is created from {ticks:N0} 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.Globalization
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
End Class
'
'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.
Per le applicazioni in cui la portabilità dei dati di data e ora o un livello limitato di consapevolezza del fuso orario è importante, è possibile usare il costruttore corrispondente DateTimeOffset .
Si applica a
DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Int32, Calendar)
- Origine:
- DateTime.cs
- Origine:
- DateTime.cs
- Origine:
- DateTime.cs
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.
public:
DateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, int microsecond, System::Globalization::Calendar ^ calendar);
public DateTime (int year, int month, int day, int hour, int minute, int second, int millisecond, int microsecond, System.Globalization.Calendar calendar);
new DateTime : int * int * int * int * int * int * int * int * System.Globalization.Calendar -> 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, microsecond As Integer, calendar As Calendar)
Parametri
- year
- Int32
Anno (da 1 al numero di anni in calendar
).
- month
- Int32
Mese (da 1 al numero di mesi in calendar
).
- day
- Int32
Giorno (da 1 al numero di giorni in month
).
- hour
- Int32
Ore (da 0 a 23).
- minute
- Int32
Minuti (da 0 a 59).
- second
- Int32
Secondi (da 0 a 59).
- millisecond
- Int32
Millisecondi (da 0 a 999).
- microsecond
- Int32
Microsecondi (da 0 a 999).
- calendar
- Calendar
Calendario usato per interpretare year
, month
e day
.
Eccezioni
calendar
è null
year
non è compreso nell'intervallo supportato da calendar
.
-oppure-
month
è minore di 1 o maggiore del numero di mesi in calendar
.
-oppure-
day
è minore di 1 o maggiore del numero di giorni in month
.
-oppure-
hour
è minore di 0 o maggiore di 23.
-oppure-
minute
è minore di 0 o maggiore di 59.
-oppure-
second
è minore di 0 o maggiore di 59.
-oppure-
millisecond
è minore di 0 o maggiore di 999.
-oppure-
microsecond
è minore di 0 o maggiore di 999.
Commenti
I valori consentiti per year
i parametri , month
e day
dipendono dal calendar
parametro . Viene generata un'eccezione se la data e l'ora specificate non possono essere espresse utilizzando calendar
.
Per le applicazioni in cui la portabilità dei dati di data e ora o un livello limitato di consapevolezza del fuso orario è importante, è possibile usare il costruttore corrispondente DateTimeOffset .
Si applica a
DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Int32, DateTimeKind)
- Origine:
- DateTime.cs
- Origine:
- DateTime.cs
- Origine:
- DateTime.cs
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.
public:
DateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, int microsecond, DateTimeKind kind);
public DateTime (int year, int month, int day, int hour, int minute, int second, int millisecond, int microsecond, DateTimeKind kind);
new DateTime : int * 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, microsecond As Integer, kind As DateTimeKind)
Parametri
- year
- Int32
Anno (da 1 a 9999).
- month
- Int32
Mese (da 1 a 12).
- day
- Int32
Giorno (da 1 al numero di giorni in month
).
- hour
- Int32
Ore (da 0 a 23).
- minute
- Int32
Minuti (da 0 a 59).
- second
- Int32
Secondi (da 0 a 59).
- millisecond
- Int32
Millisecondi (da 0 a 999).
- microsecond
- Int32
Microsecondi (da 0 a 999).
- kind
- 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.
Eccezioni
year
è minore di 1 o maggiore di 9999.
-oppure-
month
è minore di 1 o maggiore di 12.
-oppure-
day
è minore di 1 o maggiore del numero di giorni in month
.
-oppure-
hour
è minore di 0 o maggiore di 23.
-oppure-
minute
è minore di 0 o maggiore di 59.
-oppure-
second
è minore di 0 o maggiore di 59.
-oppure-
millisecond
è minore di 0 o maggiore di 999.
-oppure-
microsecond
è minore di 0 o maggiore di 999.
kind
non è uno dei valori di DateTimeKind.
Commenti
Questo costruttore interpreta year
e month
day
come anno, mese e giorno nel calendario gregoriano. Per creare un'istanza di un DateTime valore usando l'anno, il mese e il giorno in un altro calendario, chiamare il DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Int32, Calendar, DateTimeKind) costruttore.
Per le applicazioni in cui la portabilità dei dati di data e ora o un grado limitato di consapevolezza del fuso orario è importante, è possibile usare il costruttore corrispondente DateTimeOffset .
Si applica a
DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Calendar, DateTimeKind)
- Origine:
- DateTime.cs
- Origine:
- DateTime.cs
- Origine:
- DateTime.cs
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.
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
Public Sub New (year As Integer, month As Integer, day As Integer, hour As Integer, minute As Integer, second As Integer, millisecond As Integer, calendar As Calendar, kind As DateTimeKind)
Parametri
- year
- Int32
Anno (da 1 al numero di anni in calendar
).
- month
- Int32
Mese (da 1 al numero di mesi in calendar
).
- day
- Int32
Giorno (da 1 al numero di giorni in month
).
- hour
- Int32
Ore (da 0 a 23).
- minute
- Int32
Minuti (da 0 a 59).
- second
- Int32
Secondi (da 0 a 59).
- millisecond
- Int32
Millisecondi (da 0 a 999).
- calendar
- Calendar
Calendario usato per interpretare year
, month
e day
.
- kind
- 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.
Eccezioni
calendar
è null
.
year
non è compreso nell'intervallo supportato da calendar
.
-oppure-
month
è minore di 1 o maggiore del numero di mesi in calendar
.
-oppure-
day
è minore di 1 o maggiore del numero di giorni in month
.
-oppure-
hour
è minore di 0 o maggiore di 23.
-oppure-
minute
è minore di 0 o maggiore di 59.
-oppure-
second
è minore di 0 o maggiore di 59.
-oppure-
millisecond
è minore di 0 o maggiore di 999.
kind
non è uno dei valori di DateTimeKind.
Esempio
Nell'esempio seguente viene chiamato due volte il costruttore per creare un'istanza DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Calendar, DateTimeKind) di due DateTime valori. La prima chiamata crea un'istanza di un DateTime valore usando un PersianCalendar oggetto. Poiché il calendario persiano non può essere designato come calendario predefinito per una cultura, la visualizzazione di una data nel calendario persiano richiede singole chiamate ai PersianCalendar.GetMonthrelativi metodi , PersianCalendar.GetDayOfMonthe PersianCalendar.GetYear . La seconda chiamata al costruttore crea un'istanza di un DateTime valore usando un HijriCalendar oggetto. Nell'esempio vengono modificate le impostazioni cultura correnti in Arabo (Siria) e viene modificato il calendario predefinito della cultura corrente nel calendario Hijri. Poiché Hijri è il calendario predefinito delle impostazioni cultura correnti, il Console.WriteLine metodo lo usa per formattare la data. Quando le impostazioni cultura correnti precedenti (ovvero inglese (Stati Uniti) vengono ripristinate in questo caso, il Console.WriteLine metodo usa il calendario gregoriano predefinito della cultura corrente per formattare la data.
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
open System
open System.Globalization
open System.Text.RegularExpressions
open System.Threading
let getCalendarName (cal: Calendar) =
Regex.Match(string cal, "\\.(\\w+)Calendar").Groups[1].Value
printfn "Using the Persian Calendar:"
let persian = PersianCalendar()
let date1 = DateTime(1389, 5, 27, 16, 32, 18, 500, persian, DateTimeKind.Local)
printfn $"""{date1.ToString "M/dd/yyyy h:mm:ss.fff tt"} {date1.Kind}"""
let sep = DateTimeFormatInfo.CurrentInfo.TimeSeparator
printfn $"{persian.GetMonth date1}/{persian.GetDayOfMonth date1}/{persian.GetYear date1} {persian.GetHour date1}{sep}{persian.GetMinute date1:D2}{sep}{persian.GetSecond date1:D2}.{persian.GetMilliseconds date1:G3} {date1.Kind}\n"
printfn "Using the Hijri Calendar:"
// Get current culture so it can later be restored.
let dftCulture = Thread.CurrentThread.CurrentCulture
// Define Hijri calendar.
let hijri = HijriCalendar()
// Make ar-SY the current culture and Hijri the current calendar.
Thread.CurrentThread.CurrentCulture <- CultureInfo "ar-SY"
let current = CultureInfo.CurrentCulture
current.DateTimeFormat.Calendar <- hijri
let dFormat =
let dFormat = current.DateTimeFormat.ShortDatePattern
// Ensure year is displayed as four digits.
Regex.Replace(dFormat, "/yy$", "/yyyy") + " H:mm:ss.fff"
let fmtString = "{0} culture using the {1} calendar: {2:" + dFormat + "} {3}"
let date2 = 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
let dFormat2 = DateTimeFormatInfo.CurrentInfo.ShortDatePattern + " H:mm:ss.fff"
let fmtString2 = "{0} culture using the {1} calendar: {2:" + dFormat2 + "} {3}"
Console.WriteLine(fmtString2, CultureInfo.CurrentCulture, getCalendarName CultureInfo.CurrentCulture.Calendar, date2, date2.Kind)
// 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 per year
, month
e day
parametri dipendono dal calendar
parametro . Viene generata un'eccezione se non è possibile esprimere la data e l'ora specificati usando calendar
.
Per le applicazioni in cui la portabilità dei dati di data e ora o un grado limitato di consapevolezza del fuso orario è importante, è possibile usare il costruttore corrispondente DateTimeOffset .
Importante
Le ere nel calendario giapponese sono basate sul regno dell'imperatore e pertanto è previsto che cambino. Ad esempio, il 1° maggio 2019 contraddistingue l'inizio dell'era Reiwa in JapaneseCalendar e JapaneseLunisolarCalendar. Questo cambio di era interessa tutte le applicazioni che usano questi calendari. Per altre informazioni e per determinare se le applicazioni sono interessate, vedere Gestione di una nuova era nel calendario giapponese in .NET. Per informazioni sui test delle applicazioni nei sistemi Windows per garantire la loro idoneità per la modifica dell'era, vedere Preparare l'applicazione per la modifica dell'era giapponese. Per le funzionalità di .NET che supportano calendari con più era e per le procedure consigliate quando si usano calendari che supportano più epoche, vedere Uso delle era.
Lo System.Globalization spazio dei nomi fornisce diversi calendari, tra cui GregorianCalendar e JulianCalendar.
Si applica a
DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Int32)
- Origine:
- DateTime.cs
- Origine:
- DateTime.cs
- Origine:
- DateTime.cs
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.
public:
DateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, int microsecond);
public DateTime (int year, int month, int day, int hour, int minute, int second, int millisecond, int microsecond);
new DateTime : int * 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, microsecond As Integer)
Parametri
- year
- Int32
Anno (da 1 a 9999).
- month
- Int32
Mese (da 1 a 12).
- day
- Int32
Giorno (da 1 al numero di giorni in month
).
- hour
- Int32
Ore (da 0 a 23).
- minute
- Int32
Minuti (da 0 a 59).
- second
- Int32
Secondi (da 0 a 59).
- millisecond
- Int32
Millisecondi (da 0 a 999).
- microsecond
- Int32
I microsecondi (da 0 a 999).
Eccezioni
year
è minore di 1 o maggiore di 9999.
-oppure-
month
è minore di 1 o maggiore di 12.
-oppure-
day
è minore di 1 o maggiore del numero di giorni in month
.
-oppure-
hour
è minore di 0 o maggiore di 23.
-oppure-
minute
è minore di 0 o maggiore di 59.
-oppure-
second
è minore di 0 o maggiore di 59.
-oppure-
millisecond
è minore di 0 o maggiore di 999.
-oppure-
microsecond
è minore di 0 o maggiore di 999.
Commenti
Questo costruttore interpreta year
, month
e day
come anno, mese e giorno nel calendario gregoriano. Per creare un'istanza di un DateTime valore usando l'anno, il mese e il giorno in un altro calendario, chiamare il DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Int32, Calendar) costruttore.
La proprietà Kind viene inizializzata su Unspecified.
Per le applicazioni in cui la portabilità dei dati di data e ora o un grado limitato di consapevolezza del fuso orario è importante, è possibile usare il costruttore corrispondente DateTimeOffset .
Si applica a
DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Calendar)
- Origine:
- DateTime.cs
- Origine:
- DateTime.cs
- Origine:
- DateTime.cs
Inizializza una nuova istanza della struttura DateTime su anno, mese, giorno, ora, minuto, secondo e millisecondo determinati per il calendario specificato.
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
Public Sub New (year As Integer, month As Integer, day As Integer, hour As Integer, minute As Integer, second As Integer, millisecond As Integer, calendar As Calendar)
Parametri
- year
- Int32
Anno (da 1 al numero di anni in calendar
).
- month
- Int32
Mese (da 1 al numero di mesi in calendar
).
- day
- Int32
Giorno (da 1 al numero di giorni in month
).
- hour
- Int32
Ore (da 0 a 23).
- minute
- Int32
Minuti (da 0 a 59).
- second
- Int32
Secondi (da 0 a 59).
- millisecond
- Int32
Millisecondi (da 0 a 999).
- calendar
- Calendar
Calendario usato per interpretare year
, month
e day
.
Eccezioni
calendar
è null
.
year
non è compreso nell'intervallo supportato da calendar
.
-oppure-
month
è minore di 1 o maggiore del numero di mesi in calendar
.
-oppure-
day
è minore di 1 o maggiore del numero di giorni in month
.
-oppure-
hour
è minore di 0 o maggiore di 23.
-oppure-
minute
è minore di 0 o maggiore di 59.
-oppure-
second
è minore di 0 o maggiore di 59.
-oppure-
millisecond
è minore di 0 o maggiore di 999.
Esempio
Nell'esempio seguente viene chiamato due volte il costruttore per creare un'istanza DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Calendar) di due DateTime valori. La prima chiamata crea un'istanza di un DateTime valore usando un PersianCalendar oggetto. Poiché il calendario persiano non può essere designato come calendario predefinito per una cultura, la visualizzazione di una data nel calendario persiano richiede singole chiamate ai PersianCalendar.GetMonthrelativi metodi , PersianCalendar.GetDayOfMonthe PersianCalendar.GetYear . La seconda chiamata al costruttore crea un'istanza di un DateTime valore usando un HijriCalendar oggetto. Nell'esempio vengono modificate le impostazioni cultura correnti in Arabo (Siria) e viene modificato il calendario predefinito della cultura corrente nel calendario Hijri. Poiché Hijri è il calendario predefinito delle impostazioni cultura correnti, il Console.WriteLine metodo lo usa per formattare la data. Quando le impostazioni cultura correnti precedenti (ovvero inglese (Stati Uniti) vengono ripristinate in questo caso, il Console.WriteLine metodo usa il calendario gregoriano predefinito della cultura corrente per formattare la data.
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
open System
open System.Globalization
open System.Text.RegularExpressions
open System.Threading
let getCalendarName (cal: Calendar) =
Regex.Match(string cal, "\\.(\\w+)Calendar").Groups[1].Value
printfn "Using the Persian Calendar:"
let persian = PersianCalendar()
let date1 = DateTime(1389, 5, 27, 16, 32, 18, 500, persian)
printfn $"""{date1.ToString("M/dd/yyyy h:mm:ss.fff tt")}"""
let sep = DateTimeFormatInfo.CurrentInfo.TimeSeparator
printfn $"{persian.GetMonth date1}/{persian.GetDayOfMonth date1}/{persian.GetYear date1} {persian.GetHour date1}{sep}%02i{persian.GetMinute date1}{sep}%02i{persian.GetSecond date1}.%.3f{persian.GetMilliseconds date1}\n"
printfn "Using the Hijri Calendar:"
// Get current culture so it can later be restored.
let dftCulture = Thread.CurrentThread.CurrentCulture
// Define Hijri calendar.
let hijri = HijriCalendar()
// Make ar-SY the current culture and Hijri the current calendar.
Thread.CurrentThread.CurrentCulture <- CultureInfo "ar-SY"
let current = CultureInfo.CurrentCulture
current.DateTimeFormat.Calendar <- hijri
let dFormat =
let dFormat = current.DateTimeFormat.ShortDatePattern
// Ensure year is displayed as four digits.
Regex.Replace(dFormat, "/yy$", "/yyyy") + " H:mm:ss.fff"
let fmtString = "{0} culture using the {1} calendar: {2:" + dFormat + "}"
let date2 = DateTime(1431, 9, 9, 16, 32, 18, 500, hijri)
Console.WriteLine(fmtString, current, getCalendarName hijri, date2)
// Restore previous culture.
Thread.CurrentThread.CurrentCulture <- dftCulture
let dFormat2 = DateTimeFormatInfo.CurrentInfo.ShortDatePattern + " H:mm:ss.fff"
let fmtString2 = "{0} culture using the {1} calendar: {2:" + dFormat + "}"
Console.WriteLine(fmtString2, CultureInfo.CurrentCulture, getCalendarName CultureInfo.CurrentCulture.Calendar, date2)
// 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.
I valori consentiti per year
, month
e day
dipendono da calendar
. Viene generata un'eccezione se la data e l'ora specificate non possono essere espresse utilizzando calendar
.
Per le applicazioni in cui la portabilità dei dati di data e ora o un livello limitato di consapevolezza del fuso orario è importante, è possibile usare il costruttore corrispondente DateTimeOffset .
Importante
Le ere nel calendario giapponese sono basate sul regno dell'imperatore e pertanto è previsto che cambino. Ad esempio, il 1° maggio 2019 contraddistingue l'inizio dell'era Reiwa in JapaneseCalendar e JapaneseLunisolarCalendar. Questo cambio di era interessa tutte le applicazioni che usano questi calendari. Per altre informazioni e per determinare se le applicazioni sono interessate, vedere Gestione di una nuova era nel calendario giapponese in .NET. Per informazioni sul test delle applicazioni nei sistemi Windows per garantire la conformità per il cambiamento dell'era, vedere Preparare l'applicazione per la modifica dell'era giapponese. Per le funzionalità di .NET che supportano calendari con più era e per le procedure consigliate quando si usano calendari che supportano più ere, vedere Uso delle era.
Lo System.Globalization spazio dei nomi fornisce diversi calendari, tra cui GregorianCalendar e JulianCalendar.
Vedi anche
Si applica a
DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, DateTimeKind)
- Origine:
- DateTime.cs
- Origine:
- DateTime.cs
- Origine:
- DateTime.cs
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.
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
Anno (da 1 a 9999).
- month
- Int32
Mese (da 1 a 12).
- day
- Int32
Giorno (da 1 al numero di giorni in month
).
- hour
- Int32
Ore (da 0 a 23).
- minute
- Int32
Minuti (da 0 a 59).
- second
- Int32
Secondi (da 0 a 59).
- millisecond
- Int32
Millisecondi (da 0 a 999).
- kind
- 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.
Eccezioni
year
è minore di 1 o maggiore di 9999.
-oppure-
month
è minore di 1 o maggiore di 12.
-oppure-
day
è minore di 1 o maggiore del numero di giorni in month
.
-oppure-
hour
è minore di 0 o maggiore di 23.
-oppure-
minute
è minore di 0 o maggiore di 59.
-oppure-
second
è minore di 0 o maggiore di 59.
-oppure-
millisecond
è minore di 0 o maggiore di 999.
kind
non è uno dei valori di DateTimeKind.
Esempio
Nell'esempio seguente viene utilizzato il costruttore per creare un'istanza DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, DateTimeKind) di un DateTime valore.
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, in this case for en-us culture:
// 8/18/2010 4:32:18.500 PM Local
let date1 = DateTime(2010, 8, 18, 16, 32, 18, 500, DateTimeKind.Local)
printfn $"""{date1.ToString "M/dd/yyyy h:mm:ss.fff tt"} {date1.Kind}"""
// The example displays the following output, in this case for en-us culture:
// 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
, month
e day
come anno, mese e giorno nel calendario gregoriano. Per creare un'istanza di un DateTime valore usando anno, mese e giorno in un altro calendario, chiamare il DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Calendar, DateTimeKind) costruttore.
Per le applicazioni in cui la portabilità dei dati di data e ora o un livello limitato di consapevolezza del fuso orario è importante, è possibile usare il costruttore corrispondente DateTimeOffset .
Si applica a
DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32)
- Origine:
- DateTime.cs
- Origine:
- DateTime.cs
- Origine:
- DateTime.cs
Inizializza una nuova istanza della struttura DateTime su anno, mese, giorno, ora, minuto, secondo e millisecondo specificati.
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
Anno (da 1 a 9999).
- month
- Int32
Mese (da 1 a 12).
- day
- Int32
Giorno (da 1 al numero di giorni in month
).
- hour
- Int32
Ore (da 0 a 23).
- minute
- Int32
Minuti (da 0 a 59).
- second
- Int32
Secondi (da 0 a 59).
- millisecond
- Int32
Millisecondi (da 0 a 999).
Eccezioni
year
è minore di 1 o maggiore di 9999.
-oppure-
month
è minore di 1 o maggiore di 12.
-oppure-
day
è minore di 1 o maggiore del numero di giorni in month
.
-oppure-
hour
è minore di 0 o maggiore di 23.
-oppure-
minute
è minore di 0 o maggiore di 59.
-oppure-
second
è minore di 0 o maggiore di 59.
-oppure-
millisecond
è minore di 0 o maggiore di 999.
Esempio
Nell'esempio seguente viene utilizzato il costruttore per creare un'istanza DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32) di un DateTime valore.
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, in this case for en-us culture:
// 8/18/2010 4:32:18.500 PM
let date1 = DateTime(2010, 8, 18, 16, 32, 18, 500)
date1.ToString "M/dd/yyyy h:mm:ss.fff tt"
|> printfn "%s"
// The example displays the following output, in this case for en-us culture:
// 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
, month
e day
come anno, mese e giorno nel calendario gregoriano. Per creare un'istanza di un DateTime valore usando anno, mese e giorno in un altro calendario, chiamare il DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Calendar) costruttore.
La proprietà Kind viene inizializzata su Unspecified.
Per le applicazioni in cui la portabilità dei dati di data e ora o un livello limitato di consapevolezza del fuso orario è importante, è possibile usare il costruttore corrispondente DateTimeOffset .
Vedi anche
Si applica a
DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Int32, Calendar, DateTimeKind)
- Origine:
- DateTime.cs
- Origine:
- DateTime.cs
- Origine:
- DateTime.cs
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.
public:
DateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, int microsecond, System::Globalization::Calendar ^ calendar, DateTimeKind kind);
public DateTime (int year, int month, int day, int hour, int minute, int second, int millisecond, int microsecond, System.Globalization.Calendar calendar, DateTimeKind kind);
new DateTime : int * int * int * int * int * int * int * int * System.Globalization.Calendar * 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, microsecond As Integer, calendar As Calendar, kind As DateTimeKind)
Parametri
- year
- Int32
Anno (da 1 al numero di anni in calendar
).
- month
- Int32
Mese (da 1 al numero di mesi in calendar
).
- day
- Int32
Giorno (da 1 al numero di giorni in month
).
- hour
- Int32
Ore (da 0 a 23).
- minute
- Int32
Minuti (da 0 a 59).
- second
- Int32
Secondi (da 0 a 59).
- millisecond
- Int32
Millisecondi (da 0 a 999).
- microsecond
- Int32
Microsecondi (da 0 a 999).
- calendar
- Calendar
Calendario usato per interpretare year
, month
e day
.
- kind
- 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.
Eccezioni
calendar
è null
year
non è compreso nell'intervallo supportato da calendar
.
-oppure-
month
è minore di 1 o maggiore del numero di mesi in calendar
.
-oppure-
day
è minore di 1 o maggiore del numero di giorni in month
.
-oppure-
hour
è minore di 0 o maggiore di 23.
-oppure-
minute
è minore di 0 o maggiore di 59.
-oppure-
second
è minore di 0 o maggiore di 59.
-oppure-
millisecond
è minore di 0 o maggiore di 999.
-oppure-
microsecond
è minore di 0 o maggiore di 999.
kind
non è uno dei valori di DateTimeKind.
Commenti
I valori consentiti per year
i parametri , month
e day
dipendono dal calendar
parametro . Viene generata un'eccezione se la data e l'ora specificate non possono essere espresse utilizzando calendar
.
Per le applicazioni in cui la portabilità dei dati di data e ora o un livello limitato di consapevolezza del fuso orario è importante, è possibile usare il costruttore corrispondente DateTimeOffset .
Si applica a
DateTime(Int32, Int32, Int32, Int32, Int32, Int32, DateTimeKind)
- Origine:
- DateTime.cs
- Origine:
- DateTime.cs
- Origine:
- DateTime.cs
Inizializza una nuova istanza della struttura DateTime su anno, mese, giorno, ora, minuto, secondo e ora UTC (Coordinated Universal Time) oppure ora locale specificati.
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
Anno (da 1 a 9999).
- month
- Int32
Mese (da 1 a 12).
- day
- Int32
Giorno (da 1 al numero di giorni in month
).
- hour
- Int32
Ore (da 0 a 23).
- minute
- Int32
Minuti (da 0 a 59).
- second
- Int32
Secondi (da 0 a 59).
- kind
- 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.
Eccezioni
year
è minore di 1 o maggiore di 9999.
-oppure-
month
è minore di 1 o maggiore di 12.
-oppure-
day
è minore di 1 o maggiore del numero di giorni in month
.
-oppure-
hour
è minore di 0 o maggiore di 23.
-oppure-
minute
è minore di 0 o maggiore di 59.
-oppure-
second
è minore di 0 o maggiore di 59.
kind
non è uno dei valori di DateTimeKind.
Esempio
Nell'esempio seguente viene utilizzato il costruttore per creare un'istanza DateTime(Int32, Int32, Int32, Int32, Int32, Int32, DateTimeKind) di un DateTime valore.
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, in this case for en-us culture:
// 8/18/2010 4:32:00 PM Local
let date1 = DateTime(2010, 8, 18, 16, 32, 0, DateTimeKind.Local)
printfn $"{date1} {date1.Kind}"
// The example displays the following output, in this case for en-us culture:
// 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
, month
e day
come anno, mese e giorno nel calendario gregoriano. Per creare un'istanza di un DateTime valore usando anno, mese e giorno in un altro calendario, chiamare il DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Calendar, DateTimeKind) costruttore.
Per le applicazioni in cui la portabilità dei dati di data e ora o un livello limitato di consapevolezza del fuso orario è importante, è possibile usare il costruttore corrispondente DateTimeOffset .
Si applica a
DateTime(Int32, Int32, Int32, Int32, Int32, Int32)
- Origine:
- DateTime.cs
- Origine:
- DateTime.cs
- Origine:
- DateTime.cs
Inizializza una nuova istanza della struttura DateTime su anno, mese, giorno, ora, minuto e secondo specificati.
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
Anno (da 1 a 9999).
- month
- Int32
Mese (da 1 a 12).
- day
- Int32
Giorno (da 1 al numero di giorni in month
).
- hour
- Int32
Ore (da 0 a 23).
- minute
- Int32
Minuti (da 0 a 59).
- second
- Int32
Secondi (da 0 a 59).
Eccezioni
year
è minore di 1 o maggiore di 9999.
-oppure-
month
è minore di 1 o maggiore di 12.
-oppure-
day
è minore di 1 o maggiore del numero di giorni in month
.
-oppure-
hour
è minore di 0 o maggiore di 23.
-oppure-
minute
è minore di 0 o maggiore di 59.
-oppure-
second
è minore di 0 o maggiore di 59.
Esempio
Nell'esempio seguente viene utilizzato il costruttore per creare un'istanza DateTime di un DateTime valore.
DateTime date1 = new DateTime(2010, 8, 18, 16, 32, 0);
Console.WriteLine(date1.ToString());
// The example displays the following output, in this case for en-us culture:
// 8/18/2010 4:32:00 PM
let date1 = DateTime(2010, 8, 18, 16, 32, 0)
printfn $"{date1}"
// The example displays the following output, in this case for en-us culture:
// 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.
Questo costruttore interpretayear
, month
e day
come anno, mese e giorno nel calendario gregoriano. Per creare un'istanza di un DateTime valore usando anno, mese e giorno in un altro calendario, chiamare il DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Calendar) costruttore.
Per le applicazioni in cui la portabilità dei dati di data e ora o un livello limitato di consapevolezza del fuso orario è importante, è possibile usare il costruttore corrispondente DateTimeOffset .
Si applica a
DateTime(Int32, Int32, Int32, Calendar)
- Origine:
- DateTime.cs
- Origine:
- DateTime.cs
- Origine:
- DateTime.cs
Inizializza una nuova istanza della struttura DateTime su anno, mese e giorno indicati per il calendario specificato.
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
Public Sub New (year As Integer, month As Integer, day As Integer, calendar As Calendar)
Parametri
- year
- Int32
Anno (da 1 al numero di anni in calendar
).
- month
- Int32
Mese (da 1 al numero di mesi in calendar
).
- day
- Int32
Giorno (da 1 al numero di giorni in month
).
- calendar
- Calendar
Calendario usato per interpretare year
, month
e day
.
Eccezioni
calendar
è null
.
year
non è compreso nell'intervallo supportato da calendar
.
-oppure-
month
è minore di 1 o maggiore del numero di mesi in calendar
.
-oppure-
day
è minore di 1 o maggiore del numero di giorni in month
.
Esempio
L'esempio seguente chiama il costruttore due volte per creare un'istanza DateTime(Int32, Int32, Int32, Calendar) di due DateTime valori. La prima chiamata crea un'istanza di un DateTime valore usando un PersianCalendar oggetto . Poiché il calendario persiano non può essere designato come calendario predefinito per le impostazioni cultura, la visualizzazione di una data nel calendario persiano richiede singole chiamate ai PersianCalendar.GetMonthrelativi metodi , PersianCalendar.GetDayOfMonthe PersianCalendar.GetYear . La seconda chiamata al costruttore crea un'istanza di un DateTime valore usando un HijriCalendar oggetto . L'esempio modifica le impostazioni cultura correnti in Arabo (Siria) e modifica il calendario predefinito delle impostazioni cultura correnti nel calendario Hijri. Poiché Hijri è il calendario predefinito delle impostazioni cultura correnti, il Console.WriteLine metodo lo usa per formattare la data. Quando vengono ripristinate le impostazioni cultura correnti precedenti ,ovvero inglese (Stati Uniti) in questo caso, il Console.WriteLine metodo usa il calendario gregoriano predefinito delle impostazioni cultura correnti per formattare la data.
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
open System
open System.Globalization
open System.Text.RegularExpressions
open System.Threading
let getCalendarName (cal: Calendar) =
Regex.Match(string cal, "\\.(\\w+)Calendar").Groups[1].Value
printfn "Using the Persian Calendar:"
let persian = PersianCalendar()
let date1 = DateTime(1389, 5, 27, persian)
printfn $"{date1}"
printfn $"{persian.GetMonth date1}/{persian.GetDayOfMonth date1}/{persian.GetYear date1}\n"
printfn "Using the Hijri Calendar:"
// Get current culture so it can later be restored.
let dftCulture = Thread.CurrentThread.CurrentCulture
// Define Hijri calendar.
let hijri = HijriCalendar()
// Make ar-SY the current culture and Hijri the current calendar.
Thread.CurrentThread.CurrentCulture <- CultureInfo "ar-SY"
let current = CultureInfo.CurrentCulture
current.DateTimeFormat.Calendar <- hijri
let dFormat =
let dFormat = current.DateTimeFormat.ShortDatePattern
// Ensure year is displayed as four digits.
Regex.Replace(dFormat, "/yy$", "/yyyy")
current.DateTimeFormat.ShortDatePattern <- dFormat
let date2 = DateTime(1431, 9, 9, hijri)
printfn $"{current} culture using the {getCalendarName hijri} calendar: {date2:d}"
// Restore previous culture.
Thread.CurrentThread.CurrentCulture <- dftCulture
printfn $"{CultureInfo.CurrentCulture} culture using the {getCalendarName CultureInfo.CurrentCulture.Calendar} calendar: {date2:d}"
// 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 il risultato DateTime è mezzanotte (00:00:00). La proprietà Kind viene inizializzata su Unspecified.
I valori consentiti per year
, month
e day
dipendono da calendar
. Viene generata un'eccezione se la data e l'ora specificate non possono essere espresse utilizzando calendar
.
Importante
Le ere nel calendario giapponese sono basate sul regno dell'imperatore e pertanto è previsto che cambino. Ad esempio, il 1° maggio 2019 contraddistingue l'inizio dell'era Reiwa in JapaneseCalendar e JapaneseLunisolarCalendar. Questo cambio di era interessa tutte le applicazioni che usano questi calendari. Per altre informazioni e per determinare se le applicazioni sono interessate, vedere Gestione di una nuova era nel calendario giapponese in .NET. Per informazioni sul test delle applicazioni nei sistemi Windows per garantire la conformità per il cambiamento dell'era, vedere Preparare l'applicazione per la modifica dell'era giapponese. Per le funzionalità di .NET che supportano calendari con più era e per le procedure consigliate quando si usano calendari che supportano più ere, vedere Uso delle era.
Lo System.Globalization spazio dei nomi fornisce diversi calendari, tra cui GregorianCalendar e JulianCalendar.
Vedi anche
Si applica a
DateTime(Int32, Int32, Int32)
- Origine:
- DateTime.cs
- Origine:
- DateTime.cs
- Origine:
- DateTime.cs
Inizializza una nuova istanza della struttura DateTime su anno, mese e giorno specificati.
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
Anno (da 1 a 9999).
- month
- Int32
Mese (da 1 a 12).
- day
- Int32
Giorno (da 1 al numero di giorni in month
).
Eccezioni
year
è minore di 1 o maggiore di 9999.
-oppure-
month
è minore di 1 o maggiore di 12.
-oppure-
day
è minore di 1 o maggiore del numero di giorni in month
.
Esempio
Nell'esempio seguente viene utilizzato il costruttore per creare un'istanza DateTime(Int32, Int32, Int32) di un DateTime valore. Nell'esempio viene inoltre illustrato che questo overload crea un valore il DateTime cui componente ora è uguale a mezzanotte (o 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
let date1 = DateTime(2010, 8, 18)
printfn $"{date1}"
// 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
, month
e day
come anno, mese e giorno nel calendario gregoriano. Per creare un'istanza di un DateTime valore usando anno, mese e giorno in un altro calendario, chiamare il DateTime(Int32, Int32, Int32, Calendar) costruttore.
L'ora del giorno per il risultato DateTime è mezzanotte (00:00:00). La proprietà Kind viene inizializzata su DateTimeKind.Unspecified.
Si applica a
DateTime(DateOnly, TimeOnly, DateTimeKind)
- Origine:
- DateTime.cs
- Origine:
- DateTime.cs
Inizializza una nuova istanza della DateTime struttura nell'oggetto specificato DateOnly e TimeOnly rispetta l'oggetto specificato DateTimeKind.
public:
DateTime(DateOnly date, TimeOnly time, DateTimeKind kind);
public DateTime (DateOnly date, TimeOnly time, DateTimeKind kind);
new DateTime : DateOnly * TimeOnly * DateTimeKind -> DateTime
Public Sub New (date As DateOnly, time As TimeOnly, kind As DateTimeKind)
Parametri
- date
- DateOnly
Parte della data.
- time
- TimeOnly
Parte dell'ora.
- kind
- DateTimeKind
Uno dei valori di enumerazione che indica se date
e time
specificare un'ora locale, un'ora UTC (Coordinated Universal Time) o nessuno dei due.
Si applica a
DateTime(Int64, DateTimeKind)
- Origine:
- DateTime.cs
- Origine:
- DateTime.cs
- Origine:
- DateTime.cs
Inizializza una nuova istanza della struttura DateTime su un numero specificato di tick e sull'ora UTC (Coordinated Universal Time) oppure sull'ora locale.
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
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.
- kind
- DateTimeKind
Uno dei valori di enumerazione che indica se ticks
specifica un'ora locale, un'ora UTC (Coordinated Universal Time) o nessuna delle due.
Eccezioni
ticks
è minore di DateTime.MinValue o maggiore di DateTime.MaxValue.
kind
non è uno dei valori di DateTimeKind.
Commenti
Per le applicazioni in cui la portabilità dei dati di data e ora o un livello limitato di consapevolezza del fuso orario è importante, è possibile usare il costruttore corrispondente DateTimeOffset .
Si applica a
DateTime(DateOnly, TimeOnly)
- Origine:
- DateTime.cs
- Origine:
- DateTime.cs
Inizializza una nuova istanza della DateTime struttura nell'oggetto specificato DateOnly e TimeOnly. La nuova istanza avrà il Unspecified tipo .
public:
DateTime(DateOnly date, TimeOnly time);
public DateTime (DateOnly date, TimeOnly time);
new DateTime : DateOnly * TimeOnly -> DateTime
Public Sub New (date As DateOnly, time As TimeOnly)
Parametri
- date
- DateOnly
Parte della data.
- time
- TimeOnly
Parte dell'ora.
Si applica a
DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Calendar)
- Origine:
- DateTime.cs
- Origine:
- DateTime.cs
- Origine:
- DateTime.cs
Inizializza una nuova istanza della struttura DateTime su anno, mese, giorno, ora, minuto e secondo determinati per il calendario specificato.
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
Public Sub New (year As Integer, month As Integer, day As Integer, hour As Integer, minute As Integer, second As Integer, calendar As Calendar)
Parametri
- year
- Int32
Anno (da 1 al numero di anni in calendar
).
- month
- Int32
Mese (da 1 al numero di mesi in calendar
).
- day
- Int32
Giorno (da 1 al numero di giorni in month
).
- hour
- Int32
Ore (da 0 a 23).
- minute
- Int32
Minuti (da 0 a 59).
- second
- Int32
Secondi (da 0 a 59).
- calendar
- Calendar
Calendario usato per interpretare year
, month
e day
.
Eccezioni
calendar
è null
.
year
non è compreso nell'intervallo supportato da calendar
.
-oppure-
month
è minore di 1 o maggiore del numero di mesi in calendar
.
-oppure-
day
è minore di 1 o maggiore del numero di giorni in month
.
-oppure-
hour
è minore di 0 o maggiore di 23
-oppure-
minute
è minore di 0 o maggiore di 59.
-oppure-
second
è minore di 0 o maggiore di 59.
Esempio
L'esempio seguente chiama il costruttore due volte per creare un'istanza DateTime(Int32, Int32, Int32, Int32, Int32, Int32, Calendar) di due DateTime valori. La prima chiamata crea un'istanza di un DateTime valore usando un PersianCalendar oggetto . Poiché il calendario persiano non può essere designato come calendario predefinito per le impostazioni cultura, la visualizzazione di una data nel calendario persiano richiede singole chiamate ai PersianCalendar.GetMonthrelativi metodi , PersianCalendar.GetDayOfMonthe PersianCalendar.GetYear . La seconda chiamata al costruttore crea un'istanza di un DateTime valore usando un HijriCalendar oggetto . L'esempio modifica le impostazioni cultura correnti in Arabo (Siria) e modifica il calendario predefinito delle impostazioni cultura correnti nel calendario Hijri. Poiché Hijri è il calendario predefinito delle impostazioni cultura correnti, il Console.WriteLine metodo lo usa per formattare la data. Quando vengono ripristinate le impostazioni cultura correnti precedenti ,ovvero inglese (Stati Uniti) in questo caso, il Console.WriteLine metodo usa il calendario gregoriano predefinito delle impostazioni cultura correnti per formattare la data.
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
open System
open System.Globalization
open System.Text.RegularExpressions
open System.Threading
let getCalendarName (cal: Calendar) =
Regex.Match(string cal, "\\.(\\w+)Calendar").Groups[1].Value
printfn "Using the Persian Calendar:"
let persian = PersianCalendar()
let date1 = DateTime(1389, 5, 27, 16, 32, 0, persian)
printfn $"{date1}"
let sep = DateTimeFormatInfo.CurrentInfo.TimeSeparator
printfn $"{persian.GetMonth date1}/{persian.GetDayOfMonth date1}/{persian.GetYear date1} {persian.GetHour date1}{sep}%02i{persian.GetMinute date1}{sep}%02i{persian.GetSecond date1}\n"
printfn "Using the Hijri Calendar:"
// Get current culture so it can later be restored.
let dftCulture = Thread.CurrentThread.CurrentCulture
// Define Hijri calendar.
let hijri = HijriCalendar()
// Make ar-SY the current culture and Hijri the current calendar.
Thread.CurrentThread.CurrentCulture <- CultureInfo "ar-SY"
let current = CultureInfo.CurrentCulture
current.DateTimeFormat.Calendar <- hijri
let dFormat =
let dFormat = current.DateTimeFormat.ShortDatePattern
// Ensure year is displayed as four digits.
Regex.Replace(dFormat, "/yy$", "/yyyy")
current.DateTimeFormat.ShortDatePattern <- dFormat
let date2 = DateTime(1431, 9, 9, 16, 32, 18, hijri)
printfn $"{current} culture using the {getCalendarName hijri} calendar: {date2:g}"
// Restore previous culture.
Thread.CurrentThread.CurrentCulture <- dftCulture
printfn $"{CultureInfo.CurrentCulture} culture using the {getCalendarName CultureInfo.CurrentCulture.Calendar} calendar: {date2:g}"
// 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.
I valori consentiti per year
, month
e day
dipendono da calendar
. Viene generata un'eccezione se la data e l'ora specificate non possono essere espresse utilizzando calendar
.
Importante
Le ere nel calendario giapponese sono basate sul regno dell'imperatore e pertanto è previsto che cambino. Ad esempio, il 1° maggio 2019 contraddistingue l'inizio dell'era Reiwa in JapaneseCalendar e JapaneseLunisolarCalendar. Questo cambio di era interessa tutte le applicazioni che usano questi calendari. Per altre informazioni e per determinare se le applicazioni sono interessate, vedere Gestione di una nuova era nel calendario giapponese in .NET. Per informazioni sul test delle applicazioni nei sistemi Windows per garantire la conformità per il cambiamento dell'era, vedere Preparare l'applicazione per la modifica dell'era giapponese. Per le funzionalità di .NET che supportano calendari con più era e per le procedure consigliate quando si usano calendari che supportano più ere, vedere Uso delle era.
Lo System.Globalization spazio dei nomi fornisce diversi calendari, tra cui GregorianCalendar e JulianCalendar.