다음을 통해 공유


DateTimeOffset.Now 속성

정의

UTC(협정 세계시)를 기준으로 한 현지 시간의 오프셋으로 설정된 오프셋을 적용하여 현재 컴퓨터의 현재 날짜 및 시간으로 설정된 DateTimeOffset 개체를 가져옵니다.

public:
 static property DateTimeOffset Now { DateTimeOffset get(); };
public static DateTimeOffset Now { get; }
member this.Now : DateTimeOffset
Public Shared ReadOnly Property Now As DateTimeOffset

속성 값

DateTimeOffset

해당 오프셋이 UTC(협정 세계시)를 기준으로 한 현지 시간대의 오프셋이고 해당 날짜 및 시간이 현재 현지 시간인 DateTimeOffset 개체입니다.

예제

다음 예제에서는 현재 날짜 및 시간을 검색 하 고 형식에서 지원 DateTimeOffset 하는 표준 날짜 및 시간 형식 문자열을 사용 하 여 표시 하는 속성을 사용 합니다Now.

using System;

public class Example
{
   public static void Main()
   {
      String[] fmtStrings = { "d", "D", "f", "F", "g", "G", "M",
                              "R", "s", "t", "T", "u", "y" };

      DateTimeOffset value = DateTimeOffset.Now;
      // Display date in default format.
      Console.WriteLine(value);
      Console.WriteLine();

      // Display date using each of the specified formats.
      foreach (var fmtString in fmtStrings)
         Console.WriteLine("{0} --> {1}",
                           fmtString, value.ToString(fmtString));
   }
}
// The example displays output similar to the following:
//    11/19/2012 10:57:11 AM -08:00
//
//    d --> 11/19/2012
//    D --> Monday, November 19, 2012
//    f --> Monday, November 19, 2012 10:57 AM
//    F --> Monday, November 19, 2012 10:57:11 AM
//    g --> 11/19/2012 10:57 AM
//    G --> 11/19/2012 10:57:11 AM
//    M --> November 19
//    R --> Mon, 19 Nov 2012 18:57:11 GMT
//    s --> 2012-11-19T10:57:11
//    t --> 10:57 AM
//    T --> 10:57:11 AM
//    u --> 2012-11-19 18:57:11Z
//    y --> November, 2012
open System

let fmtStrings = 
    [ "d"; "D"; "f"; "F"; "g"; "G"; "M"
      "R"; "s"; "t"; "T"; "u"; "y" ]

let value = DateTimeOffset.Now
// Display date in default format.
printfn $"{value}\n"

// Display date using each of the specified formats.
for fmtString in fmtStrings do
    printfn $"{fmtString} --> {value.ToString fmtString}"

// The example displays output similar to the following:
//    11/19/2012 10:57:11 AM -08:00
//
//    d --> 11/19/2012
//    D --> Monday, November 19, 2012
//    f --> Monday, November 19, 2012 10:57 AM
//    F --> Monday, November 19, 2012 10:57:11 AM
//    g --> 11/19/2012 10:57 AM
//    G --> 11/19/2012 10:57:11 AM
//    M --> November 19
//    R --> Mon, 19 Nov 2012 18:57:11 GMT
//    s --> 2012-11-19T10:57:11
//    t --> 10:57 AM
//    T --> 10:57:11 AM
//    u --> 2012-11-19 18:57:11Z
//    y --> November, 2012
Module Example
   Public Sub Main()
      Dim fmtStrings() As String = { "d", "D", "f", "F", "g", "G", 
                                     "M", "R", "s", "t", "T", "u",
                                     "y" }
      
      Dim value As DateTimeOffset = DateTimeOffset.Now
      ' Display date in default format.
      Console.WriteLine(value)
      Console.WriteLine()
            
      ' Display date using each of the specified formats.
      For Each fmtString in fmtStrings
         Console.WriteLine("{0} --> {1}", 
                           fmtString, value.ToString(fmtString))
      Next
   End Sub
End Module
' The example displays output similar to the following:
'    11/19/2012 10:57:11 AM -08:00
'    
'    d --> 11/19/2012
'    D --> Monday, November 19, 2012
'    f --> Monday, November 19, 2012 10:57 AM
'    F --> Monday, November 19, 2012 10:57:11 AM
'    g --> 11/19/2012 10:57 AM
'    G --> 11/19/2012 10:57:11 AM
'    M --> November 19
'    R --> Mon, 19 Nov 2012 18:57:11 GMT
'    s --> 2012-11-19T10:57:11
'    t --> 10:57 AM
'    T --> 10:57:11 AM
'    u --> 2012-11-19 18:57:11Z
'    y --> November, 2012

다음 예제에서는 및 Millisecond 속성을 사용하여 Now 시스템 클록의 해상도를 확인합니다. 밀리초 구성 요소의 값이 변경된 경우에만 시간을 표시합니다.

DateTimeOffset dto;
int ctr = 0;
int ms = 0;
do {
   dto = DateTimeOffset.Now;
   if (dto.Millisecond != ms)
   {
      ms = dto.Millisecond;
      Console.WriteLine("{0}:{1:d3} ms. {2}",
                        dto.ToString("M/d/yyyy h:mm:ss"),
                        ms, dto.ToString("zzz"));
      ctr++;
   }
} while (ctr < 100);
let mutable ms = 0
for _ = 0 to 99 do
    let dto = DateTimeOffset.Now
    if dto.Millisecond <> ms then
        ms <- dto.Millisecond
        printfn $"""{dto.ToString "M/d/yyyy h:mm:ss"}:{ms:d3} ms. {dto:zzz}"""
Dim dto As DateTimeOffset
Dim ctr As Integer
Dim ms As Integer
Do
   dto = DateTimeOffset.Now
   If dto.Millisecond <> ms Then
      ms = dto.Millisecond
      Console.WriteLine("{0}:{1:d3} ms. {2}", _
                        dto.ToString("M/d/yyyy h:mm:ss"), _
                        ms, dto.ToString("zzz"))
      ctr += 1
   End If
Loop While ctr < 100

설명

현재 현지 시간의 밀리초 구성 요소의 정밀도는 시스템 클록의 해상도에 따라 달라집니다. Windows NT 3.5 이상 버전 및 Windows Vista 운영 체제의 경우 시계의 정밀도는 약 10~15밀리초입니다.

적용 대상

추가 정보