DateTime.Now Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает объект, заданный текущей DateTime датой и временем на этом компьютере, выраженным как локальное время.
public:
static property DateTime Now { DateTime get(); };
public static DateTime Now { get; }
static member Now : DateTime
Public Shared ReadOnly Property Now As DateTime
Значение свойства
Объект, значение которого является текущей локальной датой и временем.
Примеры
В следующем примере используются Now свойства и UtcNow свойства для получения текущей локальной даты и времени, а также текущей универсальной координированной даты и времени (UTC). Затем он использует соглашения о форматировании ряда языков и региональных параметров для отображения строк, а также значений их Kind свойств.
using System;
using System.Globalization;
public class Example
{
public static void Main()
{
DateTime localDate = DateTime.Now;
DateTime utcDate = DateTime.UtcNow;
String[] cultureNames = { "en-US", "en-GB", "fr-FR",
"de-DE", "ru-RU" } ;
foreach (var cultureName in cultureNames) {
var culture = new CultureInfo(cultureName);
Console.WriteLine("{0}:", culture.NativeName);
Console.WriteLine(" Local date and time: {0}, {1:G}",
localDate.ToString(culture), localDate.Kind);
Console.WriteLine(" UTC date and time: {0}, {1:G}\n",
utcDate.ToString(culture), utcDate.Kind);
}
}
}
// The example displays the following output:
// English (United States):
// Local date and time: 6/19/2015 10:35:50 AM, Local
// UTC date and time: 6/19/2015 5:35:50 PM, Utc
//
// English (United Kingdom):
// Local date and time: 19/06/2015 10:35:50, Local
// UTC date and time: 19/06/2015 17:35:50, Utc
//
// français (France):
// Local date and time: 19/06/2015 10:35:50, Local
// UTC date and time: 19/06/2015 17:35:50, Utc
//
// Deutsch (Deutschland):
// Local date and time: 19.06.2015 10:35:50, Local
// UTC date and time: 19.06.2015 17:35:50, Utc
//
// русский (Россия):
// Local date and time: 19.06.2015 10:35:50, Local
// UTC date and time: 19.06.2015 17:35:50, Utc
open System
open System.Globalization
let localDate = DateTime.Now
let utcDate = DateTime.UtcNow
let cultureNames =
[ "en-US"; "en-GB"; "fr-FR"; "de-DE"; "ru-RU" ]
for cultureName in cultureNames do
let culture = CultureInfo cultureName
printfn $"{culture.NativeName}:"
printfn $" Local date and time: {localDate.ToString culture}, {localDate.Kind:G}"
printfn $" UTC date and time: {utcDate.ToString culture}, {utcDate.Kind:G}\n"
// The example displays the following output:
// English (United States):
// Local date and time: 6/19/2015 10:35:50 AM, Local
// UTC date and time: 6/19/2015 5:35:50 PM, Utc
//
// English (United Kingdom):
// Local date and time: 19/06/2015 10:35:50, Local
// UTC date and time: 19/06/2015 17:35:50, Utc
//
// français (France):
// Local date and time: 19/06/2015 10:35:50, Local
// UTC date and time: 19/06/2015 17:35:50, Utc
//
// Deutsch (Deutschland):
// Local date and time: 19.06.2015 10:35:50, Local
// UTC date and time: 19.06.2015 17:35:50, Utc
//
// русский (Россия):
// Local date and time: 19.06.2015 10:35:50, Local
// UTC date and time: 19.06.2015 17:35:50, Utc
Imports System.Globalization
Module Example
Public Sub Main()
Dim localDate = DateTime.Now
Dim utcDate = DateTime.UtcNow
Dim cultureNames() As String = { "en-US", "en-GB", "fr-FR",
"de-DE", "ru-RU" }
For Each cultureName In cultureNames
Dim culture As New CultureInfo(cultureName)
Console.WriteLine("{0}:", culture.NativeName)
Console.WriteLine(" Local date and time: {0}, {1:G}",
localDate.ToString(culture), localDate.Kind)
Console.WriteLine(" UTC date and time: {0}, {1:G}",
utcDate.ToString(culture), utcDate.Kind)
Console.WriteLine()
Next
End Sub
End Module
' The example displays the following output:
' English (United States):
' Local date and time: 6/19/2015 10:35:50 AM, Local
' UTC date and time: 6/19/2015 5:35:50 PM, Utc
'
' English (United Kingdom):
' Local date and time: 19/06/2015 10:35:50, Local
' UTC date and time: 19/06/2015 17:35:50, Utc
'
' français (France):
' Local date and time: 19/06/2015 10:35:50, Local
' UTC date and time: 19/06/2015 17:35:50, Utc
'
' Deutsch (Deutschland):
' Local date and time: 19.06.2015 10:35:50, Local
' UTC date and time: 19.06.2015 17:35:50, Utc
'
' русский (Россия):
' Local date and time: 19.06.2015 10:35:50, Local
' UTC date and time: 19.06.2015 17:35:50, Utc
Комментарии
Свойство Now возвращает значение, представляющее текущую DateTime дату и время на локальном компьютере. Обратите внимание, что существует разница между DateTime значением, которое представляет количество тиков, прошедших с полуночи 1 января 0001 года, и строковое представление этого DateTime значения, которое выражает значение даты и времени в конкретном формате языка и региональных параметров. Сведения о форматировании значений даты и времени см. в методе ToString . В следующем примере отображается короткая строка даты и времени в ряде форматов языка и региональных параметров.
using System;
using System.Globalization;
public class Example
{
public static void Main()
{
DateTime localDate = DateTime.Now;
String[] cultureNames = { "en-US", "en-GB", "fr-FR",
"de-DE", "ru-RU" };
foreach (var cultureName in cultureNames) {
var culture = new CultureInfo(cultureName);
Console.WriteLine("{0}: {1}", cultureName,
localDate.ToString(culture));
}
}
}
// The example displays the following output:
// en-US: 6/19/2015 10:03:06 AM
// en-GB: 19/06/2015 10:03:06
// fr-FR: 19/06/2015 10:03:06
// de-DE: 19.06.2015 10:03:06
// ru-RU: 19.06.2015 10:03:06
open System
open System.Globalization
let localDate = DateTime.Now
let cultureNames =
[ "en-US"; "en-GB"; "fr-FR"; "de-DE"; "ru-RU" ]
for cultureName in cultureNames do
let culture = CultureInfo cultureName
printfn $"{cultureName}: {localDate.ToString culture}"
// The example displays the following output:
// en-US: 6/19/2015 10:03:06 AM
// en-GB: 19/06/2015 10:03:06
// fr-FR: 19/06/2015 10:03:06
// de-DE: 19.06.2015 10:03:06
// ru-RU: 19.06.2015 10:03:06
Imports System.Globalization
Module Example
Public Sub Main()
Dim localDate = DateTime.Now
Dim cultureNames() As String = { "en-US", "en-GB", "fr-FR",
"de-DE", "ru-RU" }
For Each cultureName In cultureNames
Dim culture As New CultureInfo(cultureName)
Console.WriteLine("{0}: {1}", cultureName,
localDate.ToString(culture))
Next
End Sub
End Module
' The example displays the following output:
' en-US: 6/19/2015 10:03:06 AM
' en-GB: 19/06/2015 10:03:06
' fr-FR: 19/06/2015 10:03:06
' de-DE: 19.06.2015 10:03:06
' ru-RU: 19.06.2015 10:03:06
Разрешение этого свойства зависит от системного таймера, который зависит от базовой операционной системы. Он, как правило, имеет значение от 0,5 до 15 миллисекунд. В результате повторяющиеся вызовы Now свойства в короткий интервал времени, например в цикле, могут возвращать то же значение.
Свойство Now часто используется для измерения производительности. Однако из-за низкого разрешения он не подходит для использования в качестве средства тестирования. Лучше использовать Stopwatch класс.
Начиная с .NET Framework версии 2.0 возвращаемое значение является возвращаемым свойством DateTimeKindDateTimeKind.Local.
Замечание
Вы также можете использовать DateTimeOffset.Now свойство для получения текущей локальной даты и времени. Это позволяет выразить локальное время однозначно как единую точку во времени, что, в свою очередь, делает это значение времени переносимым на компьютерах.