DateTimeOffset Конструкторы
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Инициализирует новый экземпляр DateTimeOffset структуры.
Перегрузки
| Имя | Описание |
|---|---|
| DateTimeOffset(DateTime) |
Инициализирует новый экземпляр структуры с помощью указанного DateTimeOffsetDateTime значения. |
| DateTimeOffset(DateTime, TimeSpan) |
Инициализирует новый экземпляр структуры с помощью указанного DateTimeOffsetDateTime значения и |
| DateTimeOffset(Int64, TimeSpan) |
Инициализирует новый экземпляр DateTimeOffset структуры с помощью указанного |
| DateTimeOffset(DateOnly, TimeOnly, TimeSpan) |
Инициализирует новый экземпляр структуры с помощью указанного DateTimeOffset |
| DateTimeOffset(Int32, Int32, Int32, Int32, Int32, Int32, TimeSpan) |
Инициализирует новый экземпляр структуры с помощью указанного |
| DateTimeOffset(Int32, Int32, Int32, Int32, Int32, Int32, Int32, TimeSpan) |
Инициализирует новый экземпляр структуры с помощью указанного |
| DateTimeOffset(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Calendar, TimeSpan) |
Инициализирует новый экземпляр структуры с помощью указанного DateTimeOffset |
| DateTimeOffset(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Int32, TimeSpan) |
Инициализирует новый экземпляр структуры с помощью указанного DateTimeOffset |
| DateTimeOffset(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Int32, Calendar, TimeSpan) |
Инициализирует новый экземпляр структуры с помощью указанного DateTimeOffset |
DateTimeOffset(DateTime)
- Исходный код:
- DateTimeOffset.cs
- Исходный код:
- DateTimeOffset.cs
- Исходный код:
- DateTimeOffset.cs
- Исходный код:
- DateTimeOffset.cs
- Исходный код:
- DateTimeOffset.cs
Инициализирует новый экземпляр структуры с помощью указанного DateTimeOffsetDateTime значения.
public:
DateTimeOffset(DateTime dateTime);
public DateTimeOffset(DateTime dateTime);
new DateTimeOffset : DateTime -> DateTimeOffset
Public Sub New (dateTime As DateTime)
Параметры
- dateTime
- DateTime
Дата и время.
Исключения
Дата и время в формате UTC, полученные от применения смещения, ранее , чем DateTimeOffset.MinValue.
-или-
Дата и время UTC, результаты применения смещения позже , чем DateTimeOffset.MaxValue.
Примеры
В следующем примере показано, как значение DateTime.Kind свойства dateTime параметра влияет на значение даты и времени, возвращаемое этим конструктором.
DateTime localNow = DateTime.Now;
DateTimeOffset localOffset = new DateTimeOffset(localNow);
Console.WriteLine(localOffset.ToString());
DateTime utcNow = DateTime.UtcNow;
DateTimeOffset utcOffset = new DateTimeOffset(utcNow);
Console.WriteLine(utcOffset.ToString());
DateTime unspecifiedNow = DateTime.SpecifyKind(DateTime.Now,
DateTimeKind.Unspecified);
DateTimeOffset unspecifiedOffset = new DateTimeOffset(unspecifiedNow);
Console.WriteLine(unspecifiedOffset.ToString());
//
// The code produces the following output if run on Feb. 23, 2007, on
// a system 8 hours earlier than UTC:
// 2/23/2007 4:21:58 PM -08:00
// 2/24/2007 12:21:58 AM +00:00
// 2/23/2007 4:21:58 PM -08:00
let localNow = DateTime.Now
let localOffset = DateTimeOffset localNow
printfn $"{localOffset}"
let utcNow = DateTime.UtcNow
let utcOffset = DateTimeOffset utcNow
printfn "{utcOffset}"
let unspecifiedNow = DateTime.SpecifyKind(DateTime.Now, DateTimeKind.Unspecified)
let unspecifiedOffset = DateTimeOffset unspecifiedNow
printfn $"{unspecifiedOffset}"
// The code produces the following output if run on Feb. 23, 2007, on
// a system 8 hours earlier than UTC:
// 2/23/2007 4:21:58 PM -08:00
// 2/24/2007 12:21:58 AM +00:00
// 2/23/2007 4:21:58 PM -08:00
Dim localNow As Date = Date.Now
Dim localOffset As New DateTimeOffset(localNow)
Console.WriteLine(localOffset.ToString())
Dim utcNow As Date = Date.UtcNow
Dim utcOffset As New DateTimeOffset(utcNow)
Console.WriteLine(utcOffset.ToString())
Dim unspecifiedNow As Date = Date.SpecifyKind(Date.Now, _
DateTimeKind.Unspecified)
Dim unspecifiedOffset As New DateTimeOffset(unspecifiedNow)
Console.WriteLine(unspecifiedOffset.ToString())
'
' The code produces the following output if run on Feb. 23, 2007, on
' a system 8 hours earlier than UTC:
' 2/23/2007 4:21:58 PM -08:00
' 2/24/2007 12:21:58 AM +00:00
' 2/23/2007 4:21:58 PM -08:00
Комментарии
Поведение этого конструктора зависит от значения DateTime.Kind свойства dateTime параметра:
Если значение DateTime.KindDateTimeKind.Utcравно, DateTime свойство нового экземпляра равно
dateTime, а Offset свойство равно Zero.Если значение DateTime.Kind равно DateTimeKind.Local или DateTimeKind.UnspecifiedDateTime свойство нового экземпляра равно
dateTime, а свойство равно, а Offset свойство равно смещение текущего часового пояса локальной системы.
См. также раздел
Применяется к
DateTimeOffset(DateTime, TimeSpan)
- Исходный код:
- DateTimeOffset.cs
- Исходный код:
- DateTimeOffset.cs
- Исходный код:
- DateTimeOffset.cs
- Исходный код:
- DateTimeOffset.cs
- Исходный код:
- DateTimeOffset.cs
Инициализирует новый экземпляр структуры с помощью указанного DateTimeOffsetDateTime значения и offset.
public:
DateTimeOffset(DateTime dateTime, TimeSpan offset);
public DateTimeOffset(DateTime dateTime, TimeSpan offset);
new DateTimeOffset : DateTime * TimeSpan -> DateTimeOffset
Public Sub New (dateTime As DateTime, offset As TimeSpan)
Параметры
- dateTime
- DateTime
Дата и время.
- offset
- TimeSpan
Смещение времени от согласованного универсального времени (UTC).
Исключения
dateTime.Kind
Utc равно и offset не равен нулю.
-или-
dateTime.Kind
Local равно и offset не равно смещение локального часового пояса системы.
-или-
offset не указан в течение целых минут.
offset менее -14 часов или больше 14 часов.
-или-
UtcDateTime меньше DateTimeOffset.MinValue или больше , чем DateTimeOffset.MaxValue.
Примеры
В следующем примере показано, как инициализировать DateTimeOffset объект с датой и временем и смещением локального часового пояса, когда этот часовой пояс не известен заранее.
DateTime localTime = new DateTime(2007, 07, 12, 06, 32, 00);
DateTimeOffset dateAndOffset = new DateTimeOffset(localTime,
TimeZoneInfo.Local.GetUtcOffset(localTime));
Console.WriteLine(dateAndOffset);
// The code produces the following output:
// 7/12/2007 6:32:00 AM -07:00
let localTime = DateTime(2007, 07, 12, 06, 32, 00)
let dateAndOffset = DateTimeOffset(localTime, TimeZoneInfo.Local.GetUtcOffset localTime)
printfn $"{dateAndOffset}"
// The code produces the following output:
// 7/12/2007 6:32:00 AM -07:00
Dim localTime As Date = #07/12/2007 6:32AM#
Dim dateAndOffset As New DateTimeOffset(localTime, _
TimeZoneInfo.Local.GetUtcOffset(localTime))
Console.WriteLine(dateAndOffset)
' The code produces the following output:
' 7/12/2007 6:32:00 AM -07:00
Комментарии
Поведение этого конструктора зависит от значения Kind свойства dateTime параметра:
Если значение Kind равно, значение
offsetпараметра должно быть равно 0 или ArgumentException вызываетсяDateTimeKind.Utc.Если значение Kind равно, значение
offsetпараметра должно быть равно смещением локального часового пояса от согласованного универсального времени (UTC) для указанной даты или ArgumentException возникаетDateTimeKind.Local.Если значение равно KindDateTimeKind.Unspecified,
offsetпараметр может иметь любое допустимое значение.
См. также раздел
Применяется к
DateTimeOffset(Int64, TimeSpan)
- Исходный код:
- DateTimeOffset.cs
- Исходный код:
- DateTimeOffset.cs
- Исходный код:
- DateTimeOffset.cs
- Исходный код:
- DateTimeOffset.cs
- Исходный код:
- DateTimeOffset.cs
Инициализирует новый экземпляр DateTimeOffset структуры с помощью указанного ticks числа и offset.
public:
DateTimeOffset(long ticks, TimeSpan offset);
public DateTimeOffset(long ticks, TimeSpan offset);
new DateTimeOffset : int64 * TimeSpan -> DateTimeOffset
Public Sub New (ticks As Long, offset As TimeSpan)
Параметры
- ticks
- Int64
Дата и время, выраженные как число 100-наносекунд интервалов, прошедших с 12:00:00 полуночи 1 января 0001 года.
- offset
- TimeSpan
Смещение времени от согласованного универсального времени (UTC).
Исключения
offset не указан в течение целых минут.
Свойство UtcDateTime ранее , чем DateTimeOffset.MinValue или более поздней версии, чем DateTimeOffset.MaxValue.
-или-
ticks меньше DateTimeOffset.MinValue.Ticks или больше DateTimeOffset.MaxValue.Ticks.
-или-
offset менее -14 часов или больше 14 часов.
Примеры
В следующем примере инициализируется DateTimeOffset объект с помощью числа галок в произвольной дате (в данном случае 16 июля 2007 г. в 1:32) с смещением –5.
DateTime dateWithoutOffset = new DateTime(2007, 7, 16, 13, 32, 00);
DateTimeOffset timeFromTicks = new DateTimeOffset(dateWithoutOffset.Ticks,
new TimeSpan(-5, 0, 0));
Console.WriteLine(timeFromTicks.ToString());
// The code produces the following output:
// 7/16/2007 1:32:00 PM -05:00
let dateWithoutOffset = DateTime(2007, 7, 16, 13, 32, 00)
let timeFromTicks = DateTimeOffset(dateWithoutOffset.Ticks, TimeSpan(-5, 0, 0))
printfn $"{timeFromTicks}"
// The code produces the following output:
// 7/16/2007 1:32:00 PM -05:00
Dim dateWithoutOffset As Date = #07/16/2007 1:32PM#
Dim timeFromTicks As New DateTimeOffset(datewithoutOffset.Ticks, _
New TimeSpan(-5, 0, 0))
Console.WriteLine(timeFromTicks.ToString())
' The code produces the following output:
' 7/16/2007 1:32:00 PM -05:00
Комментарии
Обычно, пытаясь вызвать DateTimeOffset конструктор, чтобы создать экземпляр DateTimeOffset значения с локальным временем и смещение, отличное от локального часового пояса, вызывает исключение ArgumentException. Эту перегрузку конструктора можно использовать для обхода DateTimeOffset этого ограничения. В следующем примере используется количество тиков локального времени для создания экземпляра DateTimeOffset значения, смещение которого не обязательно представляет собой локальное время:
DateTime localTime = DateTime.Now;
DateTimeOffset nonLocalDateWithOffset = new DateTimeOffset(localTime.Ticks,
new TimeSpan(2, 0, 0));
Console.WriteLine(nonLocalDateWithOffset);
//
// The code produces the following output if run on Feb. 23, 2007:
// 2/23/2007 4:37:50 PM +02:00
let localTime = DateTime.Now
let nonLocalDateWithOffset = DateTimeOffset(localTime.Ticks, TimeSpan(2, 0, 0))
printfn $"{nonLocalDateWithOffset}"
// The code produces the following output if run on Feb. 23, 2007:
// 2/23/2007 4:37:50 PM +02:00
Dim localTime As Date = Date.Now
Dim nonLocalDateWithOffset As New DateTimeOffset(localTime.Ticks, _
New TimeSpan(2, 0, 0))
Console.WriteLine(nonLocalDateWithOffset)
'
' The code produces the following output if run on Feb. 23, 2007:
' 2/23/2007 4:37:50 PM +02:00
См. также раздел
Применяется к
DateTimeOffset(DateOnly, TimeOnly, TimeSpan)
- Исходный код:
- DateTimeOffset.cs
- Исходный код:
- DateTimeOffset.cs
- Исходный код:
- DateTimeOffset.cs
- Исходный код:
- DateTimeOffset.cs
Инициализирует новый экземпляр структуры с помощью указанного DateTimeOffsetdate, timeи offset.
public:
DateTimeOffset(DateOnly date, TimeOnly time, TimeSpan offset);
public DateTimeOffset(DateOnly date, TimeOnly time, TimeSpan offset);
new DateTimeOffset : DateOnly * TimeOnly * TimeSpan -> DateTimeOffset
Public Sub New (date As DateOnly, time As TimeOnly, offset As TimeSpan)
Параметры
- date
- DateOnly
Часть даты.
- time
- TimeOnly
Часть времени.
- offset
- TimeSpan
Смещение времени от согласованного универсального времени (UTC).
Применяется к
DateTimeOffset(Int32, Int32, Int32, Int32, Int32, Int32, TimeSpan)
- Исходный код:
- DateTimeOffset.cs
- Исходный код:
- DateTimeOffset.cs
- Исходный код:
- DateTimeOffset.cs
- Исходный код:
- DateTimeOffset.cs
- Исходный код:
- DateTimeOffset.cs
Инициализирует новый экземпляр структуры с помощью указанного yearDateTimeOffset , , month, day, hour, secondminuteи offset.
public:
DateTimeOffset(int year, int month, int day, int hour, int minute, int second, TimeSpan offset);
public DateTimeOffset(int year, int month, int day, int hour, int minute, int second, TimeSpan offset);
new DateTimeOffset : int * int * int * int * int * int * TimeSpan -> DateTimeOffset
Public Sub New (year As Integer, month As Integer, day As Integer, hour As Integer, minute As Integer, second As Integer, offset As TimeSpan)
Параметры
- year
- Int32
Год (1–9999).
- month
- Int32
Месяц (от 1 до 12).
- day
- Int32
День (от 1 до количества дней в month).
- hour
- Int32
Часы (от 0 до 23).
- minute
- Int32
Минуты (от 0 до 59).
- second
- Int32
Секунды (от 0 до 59).
- offset
- TimeSpan
Смещение времени от согласованного универсального времени (UTC).
Исключения
offset не представляет целых минут.
year меньше одного или больше 9999.
-или-
month меньше одного или больше 12.
-или-
day меньше одного или больше, чем число дней в month.
-или-
hour меньше нуля или больше 23.
-или-
minute меньше 0 или больше 59.
-или-
second меньше 0 или больше 59.
-или-
offset менее -14 часов или больше 14 часов.
-или-
Свойство UtcDateTime ранее , чем DateTimeOffset.MinValue или более поздней версии, чем DateTimeOffset.MaxValue.
Примеры
В следующем примере создается DateTimeOffset экземпляр объекта с помощью перегрузки конструктора DateTimeOffset.DateTimeOffset(Int32, Int32, Int32, Int32, Int32, Int32, TimeSpan) .
DateTime specificDate = new DateTime(2008, 5, 1, 06, 32, 00);
DateTimeOffset offsetDate = new DateTimeOffset(specificDate.Year,
specificDate.Month,
specificDate.Day,
specificDate.Hour,
specificDate.Minute,
specificDate.Second,
new TimeSpan(-5, 0, 0));
Console.WriteLine("Current time: {0}", offsetDate);
Console.WriteLine("Corresponding UTC time: {0}", offsetDate.UtcDateTime);
// The code produces the following output:
// Current time: 5/1/2008 6:32:00 AM -05:00
// Corresponding UTC time: 5/1/2008 11:32:00 AM
let specificDate = DateTime(2008, 5, 1, 06, 32, 00)
let offsetDate = DateTimeOffset(specificDate.Year,
specificDate.Month,
specificDate.Day,
specificDate.Hour,
specificDate.Minute,
specificDate.Second,
TimeSpan(-5, 0, 0))
printfn $"Current time: {offsetDate}"
printfn $"Corresponding UTC time: {offsetDate.UtcDateTime}"
// The code produces the following output:
// Current time: 5/1/2008 6:32:00 AM -05:00
// Corresponding UTC time: 5/1/2008 11:32:00 AM
Dim specificDate As Date = #5/1/2008 6:32AM#
Dim offsetDate As New DateTimeOffset(specificDate.Year, _
specificDate.Month, _
specificDate.Day, _
specificDate.Hour, _
specificDate.Minute, _
specificDate.Second, _
New TimeSpan(-5, 0, 0))
Console.WriteLine("Current time: {0}", offsetDate)
Console.WriteLine("Corresponding UTC time: {0}", offsetDate.UtcDateTime)
' The code produces the following output:
' Current time: 5/1/2008 6:32:00 AM -05:00
' Corresponding UTC time: 5/1/2008 11:32:00 AM
Комментарии
Этот конструктор интерпретирует year, monthа day также как год, месяц и день в григорианском календаре. Чтобы создать экземпляр DateTimeOffset значения с помощью года, месяца и дня в другом календаре, вызовите DateTimeOffset(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Calendar, TimeSpan) конструктор.
См. также раздел
Применяется к
DateTimeOffset(Int32, Int32, Int32, Int32, Int32, Int32, Int32, TimeSpan)
- Исходный код:
- DateTimeOffset.cs
- Исходный код:
- DateTimeOffset.cs
- Исходный код:
- DateTimeOffset.cs
- Исходный код:
- DateTimeOffset.cs
- Исходный код:
- DateTimeOffset.cs
Инициализирует новый экземпляр структуры с помощью указанного yearDateTimeOffset , , month, day, hour, secondminutemillisecondи offset.
public:
DateTimeOffset(int year, int month, int day, int hour, int minute, int second, int millisecond, TimeSpan offset);
public DateTimeOffset(int year, int month, int day, int hour, int minute, int second, int millisecond, TimeSpan offset);
new DateTimeOffset : int * int * int * int * int * int * int * TimeSpan -> DateTimeOffset
Public Sub New (year As Integer, month As Integer, day As Integer, hour As Integer, minute As Integer, second As Integer, millisecond As Integer, offset As TimeSpan)
Параметры
- year
- Int32
Год (1–9999).
- month
- Int32
Месяц (от 1 до 12).
- day
- Int32
День (от 1 до количества дней в month).
- hour
- Int32
Часы (от 0 до 23).
- minute
- Int32
Минуты (от 0 до 59).
- second
- Int32
Секунды (от 0 до 59).
- millisecond
- Int32
Миллисекунда (от 0 до 999).
- offset
- TimeSpan
Смещение времени от согласованного универсального времени (UTC).
Исключения
offset не представляет целых минут.
year меньше одного или больше 9999.
-или-
month меньше одного или больше 12.
-или-
day меньше одного или больше, чем число дней в month.
-или-
hour меньше нуля или больше 23.
-или-
minute меньше 0 или больше 59.
-или-
second меньше 0 или больше 59.
-или-
millisecond меньше 0 или больше 999.
-или-
offset меньше -14 или больше 14.
-или-
Свойство UtcDateTime ранее , чем DateTimeOffset.MinValue или более поздней версии, чем DateTimeOffset.MaxValue.
Примеры
В следующем примере создается DateTimeOffset экземпляр объекта с помощью перегрузки конструктора DateTimeOffset.DateTimeOffset(Int32, Int32, Int32, Int32, Int32, Int32, Int32, TimeSpan) .
string fmt = "dd MMM yyyy HH:mm:ss";
DateTime thisDate = new DateTime(2007, 06, 12, 19, 00, 14, 16);
DateTimeOffset offsetDate = new DateTimeOffset(thisDate.Year,
thisDate.Month,
thisDate.Day,
thisDate.Hour,
thisDate.Minute,
thisDate.Second,
thisDate.Millisecond,
new TimeSpan(2, 0, 0));
Console.WriteLine("Current time: {0}:{1}", offsetDate.ToString(fmt), offsetDate.Millisecond);
// The code produces the following output:
// Current time: 12 Jun 2007 19:00:14:16
let fmt = "dd MMM yyyy HH:mm:ss"
let thisDate = DateTime(2007, 06, 12, 19, 00, 14, 16)
let offsetDate = DateTimeOffset(thisDate.Year,
thisDate.Month,
thisDate.Day,
thisDate.Hour,
thisDate.Minute,
thisDate.Second,
thisDate.Millisecond,
TimeSpan(2, 0, 0))
printfn $"Current time: {offsetDate.ToString fmt}:{offsetDate.Millisecond}"
// The code produces the following output:
// Current time: 12 Jun 2007 19:00:14:16
Dim fmt As String = "dd MMM yyyy HH:mm:ss"
Dim thisDate As DateTime = New Date(2007, 06, 12, 19, 00, 14, 16)
Dim offsetDate As New DateTimeOffset(thisDate.Year, _
thisDate.Month, _
thisDate.Day, _
thisDate.Hour, _
thisDate.Minute, _
thisDate.Second, _
thisDate.Millisecond, _
New TimeSpan(2, 0, 0))
Console.WriteLine("Current time: {0}:{1}", offsetDate.ToString(fmt), _
offsetDate.Millisecond)
' The code produces the following output:
' Current time: 12 Jun 2007 19:00:14:16
Комментарии
Этот конструктор интерпретирует year, monthа day также как год, месяц и день в григорианском календаре. Чтобы создать экземпляр DateTimeOffset значения с помощью года, месяца и дня в другом календаре, вызовите DateTimeOffset(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Calendar, TimeSpan) конструктор.
См. также раздел
Применяется к
DateTimeOffset(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Calendar, TimeSpan)
- Исходный код:
- DateTimeOffset.cs
- Исходный код:
- DateTimeOffset.cs
- Исходный код:
- DateTimeOffset.cs
- Исходный код:
- DateTimeOffset.cs
- Исходный код:
- DateTimeOffset.cs
Инициализирует новый экземпляр структуры с помощью указанного DateTimeOffsetyear, month, dayhour, , , secondminute, millisecondcalendarи .offset
public:
DateTimeOffset(int year, int month, int day, int hour, int minute, int second, int millisecond, System::Globalization::Calendar ^ calendar, TimeSpan offset);
public DateTimeOffset(int year, int month, int day, int hour, int minute, int second, int millisecond, System.Globalization.Calendar calendar, TimeSpan offset);
new DateTimeOffset : int * int * int * int * int * int * int * System.Globalization.Calendar * TimeSpan -> DateTimeOffset
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, offset As TimeSpan)
Параметры
- year
- Int32
Год.
- month
- Int32
Месяц (от 1 до 12).
- day
- Int32
День (от 1 до количества дней в month).
- hour
- Int32
Часы (от 0 до 23).
- minute
- Int32
Минуты (от 0 до 59).
- second
- Int32
Секунды (от 0 до 59).
- millisecond
- Int32
Миллисекунда (от 0 до 999).
- calendar
- Calendar
Календарь, используемый для интерпретации year, monthи day.
- offset
- TimeSpan
Смещение времени от согласованного универсального времени (UTC).
Исключения
offset не представляет целых минут.
calendar не может иметь значение null.
yearменьше calendar или больше MaxSupportedDateTime.YearпараметраMinSupportedDateTime.Year.
-или-
monthзначение меньше или больше, чем количество месяцев в year .calendar
-или-
day меньше одного или больше, чем число дней в month.
-или-
hour меньше нуля или больше 23.
-или-
minute меньше 0 или больше 59.
-или-
second меньше 0 или больше 59.
-или-
millisecond меньше 0 или больше 999.
-или-
offset менее -14 часов или больше 14 часов.
-или-
monthЗначения yearдаты и day времени нельзя представить в виде даты и времени.
-или-
Свойство UtcDateTime ранее , чем DateTimeOffset.MinValue или более поздней версии, чем DateTimeOffset.MaxValue.
Примеры
В следующем примере экземпляры HebrewCalendar класса и HijriCalendar класса используются для создания экземпляра DateTimeOffset значения. Затем эта дата отображается в консоли с помощью соответствующих календарей и григорианского календаря.
CultureInfo fmt;
int year;
Calendar cal;
DateTimeOffset dateInCal;
// Instantiate DateTimeOffset with Hebrew calendar
year = 5770;
cal = new HebrewCalendar();
fmt = new CultureInfo("he-IL");
fmt.DateTimeFormat.Calendar = cal;
dateInCal = new DateTimeOffset(year, 7, 12,
15, 30, 0, 0,
cal,
new TimeSpan(2, 0, 0));
// Display the date in the Hebrew calendar
Console.WriteLine("Date in Hebrew Calendar: {0:g}",
dateInCal.ToString(fmt));
// Display the date in the Gregorian calendar
Console.WriteLine("Date in Gregorian Calendar: {0:g}", dateInCal);
Console.WriteLine();
// Instantiate DateTimeOffset with Hijri calendar
year = 1431;
cal = new HijriCalendar();
fmt = new CultureInfo("ar-SA");
fmt.DateTimeFormat.Calendar = cal;
dateInCal = new DateTimeOffset(year, 7, 12,
15, 30, 0, 0,
cal,
new TimeSpan(2, 0, 0));
// Display the date in the Hijri calendar
Console.WriteLine("Date in Hijri Calendar: {0:g}",
dateInCal.ToString(fmt));
// Display the date in the Gregorian calendar
Console.WriteLine("Date in Gregorian Calendar: {0:g}", dateInCal);
Console.WriteLine();
// Instantiate DateTimeOffset with Hebrew calendar
let year = 5770
let cal = HebrewCalendar()
let fmt = CultureInfo "he-IL"
fmt.DateTimeFormat.Calendar <- cal
let dateInCal = DateTimeOffset(year, 7, 12,
15, 30, 0, 0,
cal,
TimeSpan(2, 0, 0))
// Display the date in the Hebrew calendar
printfn $"Date in Hebrew Calendar: {dateInCal.ToString fmt:g}"
// Display the date in the Gregorian calendar
printfn $"Date in Gregorian Calendar: {dateInCal:g}\n"
// Instantiate DateTimeOffset with Hijri calendar
let year = 1431
let cal = HijriCalendar()
let fmt = CultureInfo "ar-SA"
fmt.DateTimeFormat.Calendar <- cal
let dateInCal = DateTimeOffset(year, 7, 12,
15, 30, 0, 0,
cal,
TimeSpan(2, 0, 0))
// Display the date in the Hijri calendar
printfn $"Date in Hijri Calendar: {dateInCal.ToString fmt:g}"
// Display the date in the Gregorian calendar
printfn $"Date in Gregorian Calendar: {dateInCal:g}\n"
Dim fmt As CultureInfo
Dim year As Integer
Dim cal As Calendar
Dim dateInCal As DateTimeOffset
' Instantiate DateTimeOffset with Hebrew calendar
year = 5770
cal = New HebrewCalendar()
fmt = New CultureInfo("he-IL")
fmt.DateTimeFormat.Calendar = cal
dateInCal = New DateTimeOffset(year, 7, 12, _
15, 30, 0, 0, _
cal, _
New TimeSpan(2, 0, 0))
' Display the date in the Hebrew calendar
Console.WriteLine("Date in Hebrew Calendar: {0:g}", _
dateInCal.ToString(fmt))
' Display the date in the Gregorian calendar
Console.WriteLine("Date in Gregorian Calendar: {0:g}", dateInCal)
Console.WriteLine()
' Instantiate DateTimeOffset with Hijri calendar
year = 1431
cal = New HijriCalendar()
fmt = New CultureInfo("ar-SA")
fmt.DateTimeFormat.Calendar = cal
dateInCal = New DateTimeOffset(year, 7, 12, _
15, 30, 0, 0, _
cal, _
New TimeSpan(2, 0, 0))
' Display the date in the Hijri calendar
Console.WriteLine("Date in Hijri Calendar: {0:g}", _
dateInCal.ToString(fmt))
' Display the date in the Gregorian calendar
Console.WriteLine("Date in Gregorian Calendar: {0:g}", dateInCal)
Console.WriteLine()
Комментарии
Значения year, month, dayhoursecondminuteи millisecond параметры отражаются в календаре, указанном параметром.calendar Исключение возникает, если эти значения образуют дату и время, которые нельзя выразить с помощью этого календаря.
Важный
Эры в японских календарях основаны на царствии императора и поэтому, как ожидается, изменятся. Например, 1 мая 2019 г. отмечено начало эпохи Reiwa в JapaneseCalendar и JapaneseLunisolarCalendar. Такое изменение эпохи влияет на все приложения, использующие эти календари. Для получения дополнительной информации и определения влияния на ваши приложения см. статью Обработка новой эпохи в японском календаре в .NET. Сведения о тестировании ваших приложений на системах Windows для обеспечения их готовности к изменению эпохи см. в разделе Подготовка приложения к изменению японской эпохи. Функции в .NET, поддерживающие календари с несколькими эрами, и рекомендации по работе с календарями, поддерживающими несколько эпох, см. в разделе Работа с эрами.
См. также раздел
Применяется к
DateTimeOffset(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Int32, TimeSpan)
- Исходный код:
- DateTimeOffset.cs
- Исходный код:
- DateTimeOffset.cs
- Исходный код:
- DateTimeOffset.cs
- Исходный код:
- DateTimeOffset.cs
- Исходный код:
- DateTimeOffset.cs
Инициализирует новый экземпляр структуры с помощью указанного DateTimeOffsetyear, month, dayhour, , , secondminute, millisecondmicrosecondи .offset
public:
DateTimeOffset(int year, int month, int day, int hour, int minute, int second, int millisecond, int microsecond, TimeSpan offset);
public DateTimeOffset(int year, int month, int day, int hour, int minute, int second, int millisecond, int microsecond, TimeSpan offset);
new DateTimeOffset : int * int * int * int * int * int * int * int * TimeSpan -> DateTimeOffset
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, offset As TimeSpan)
Параметры
- year
- Int32
Год (1–9999).
- month
- Int32
Месяц (от 1 до 12).
- day
- Int32
День (от 1 до количества дней в month).
- hour
- Int32
Часы (от 0 до 23).
- minute
- Int32
Минуты (от 0 до 59).
- second
- Int32
Секунды (от 0 до 59).
- millisecond
- Int32
Миллисекунда (от 0 до 999).
- microsecond
- Int32
Микросекунда (от 0 до 999).
- offset
- TimeSpan
Смещение времени от согласованного универсального времени (UTC).
Исключения
offset не представляет целых минут.
year меньше 1 или больше 9999.
-или-
month меньше 1 или больше 12.
-или-
day меньше 1 или больше, чем число дней в month.
-или-
hour меньше 0 или больше 23.
-или-
minute меньше 0 или больше 59.
-или-
second меньше 0 или больше 59.
-или-
millisecond меньше 0 или больше 999.
-или-
microsecond меньше 0 или больше 999.
Комментарии
Этот конструктор интерпретирует и daymonth в виде года, месяца и дня в григорианском yearкалендаре. Чтобы создать DateTimeOffset экземпляр значения с помощью года, месяца и дня в другом календаре, вызовите DateTimeOffset(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Int32, Calendar, TimeSpan) конструктор.
Применяется к
DateTimeOffset(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Int32, Calendar, TimeSpan)
- Исходный код:
- DateTimeOffset.cs
- Исходный код:
- DateTimeOffset.cs
- Исходный код:
- DateTimeOffset.cs
- Исходный код:
- DateTimeOffset.cs
- Исходный код:
- DateTimeOffset.cs
Инициализирует новый экземпляр структуры с помощью указанного DateTimeOffsetyear, month, daysecondhourmillisecondmicrosecondminutecalendarи .offset
public:
DateTimeOffset(int year, int month, int day, int hour, int minute, int second, int millisecond, int microsecond, System::Globalization::Calendar ^ calendar, TimeSpan offset);
public DateTimeOffset(int year, int month, int day, int hour, int minute, int second, int millisecond, int microsecond, System.Globalization.Calendar calendar, TimeSpan offset);
new DateTimeOffset : int * int * int * int * int * int * int * int * System.Globalization.Calendar * TimeSpan -> DateTimeOffset
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, offset As TimeSpan)
Параметры
- year
- Int32
Год (1–9999).
- month
- Int32
Месяц (от 1 до 12).
- day
- Int32
День (от 1 до количества дней в month).
- hour
- Int32
Часы (от 0 до 23).
- minute
- Int32
Минуты (от 0 до 59).
- second
- Int32
Секунды (от 0 до 59).
- millisecond
- Int32
Миллисекунда (от 0 до 999).
- microsecond
- Int32
Микросекунда (от 0 до 999).
- calendar
- Calendar
Календарь, используемый для интерпретации year, monthи day.
- offset
- TimeSpan
Смещение времени от согласованного универсального времени (UTC).
Исключения
offset не представляет целых минут.
year не находится в диапазоне, поддерживаемом calendar.
-или-
month меньше 1 или больше количества месяцев в calendar.
-или-
day меньше 1 или больше, чем число дней в month.
-или-
hour меньше 0 или больше 23.
-или-
minute меньше 0 или больше 59.
-или-
second меньше 0 или больше 59.
-или-
millisecond меньше 0 или больше 999.
-или-
microsecond меньше 0 или больше 999.
-или-
offset менее -14 часов или больше 14 часов.
-или-
monthЗначения yearдаты и day времени нельзя представить в виде даты и времени.
-или-
Свойство UtcDateTime выше MinValue или более MaxValueпоздней версии.
Комментарии
Этот конструктор интерпретирует и daymonth в виде года, месяца и дня в григорианском yearкалендаре. Чтобы создать DateTimeOffset экземпляр значения с помощью года, месяца и дня в другом календаре, вызовите DateTimeOffset(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Int32, Calendar, TimeSpan) конструктор.