이 페이지가 유용했습니까?
이 콘텐츠에 대한 여러분의 의견은 중요합니다. 의견을 알려주십시오.
추가 의견
1500자 남음
MSDN Library
정보
요청한 주제가 아래에 표시됩니다. 그러나 이 주제는 이 라이브러리에 포함되지 않습니다.

DateTime.Kind 속성

2013-12-13

이 인스턴스에 표시된 시간이 현지 시간 또는 UTC(협정 세계시)를 기준으로 하는지 아니면 둘 중 어느 것도 기준으로 하지 않는지 여부를 나타내는 값을 가져옵니다.

Namespace:  System
어셈블리:  mscorlib(mscorlib.dll)

public DateTimeKind Kind { get; }

속성 값

형식: System.DateTimeKind
열거형 값 중 하나입니다. 기본값은 Unspecified입니다.

SpecifyKind 메서드를 호출하여 새 DateTime 값의 Kind 속성을 특정 DateTimeKind 값으로 명시적으로 설정할 수 있습니다.

Kind 속성을 사용하면 DateTime 값이 UTC(협정 세계시) 또는 현지 시간을 명확하게 반영할 수 있습니다. 이와 반대로 DateTimeOffset 구조체는 모든 시간대의 모든 시간을 하나의 시점으로 모호하지 않게 반영할 수 있습니다.

다음 예제에서는 SpecifyKind 메서드를 사용하여, Kind 속성이 ToLocalTimeToUniversalTime 변환 메서드에 영향을 주는 방식을 보여 줍니다.


// This code example demonstrates the DateTime Kind, Now, and
// UtcNow properties, and the SpecifyKind(), ToLocalTime(), 
// and ToUniversalTime() methods.

using System;

class Example
{
   public static void Demo(System.Windows.Controls.TextBlock outputBlock)
   {
      // Get the date and time for the current moment, adjusted 
      // to the local time zone.

      DateTime saveNow = DateTime.Now;

      // Get the date and time for the current moment expressed 
      // as coordinated universal time (UTC).

      DateTime saveUtcNow = DateTime.UtcNow;
      DateTime myDt;

      // Display the value and Kind property of the current moment 
      // expressed as UTC and local time.

      DisplayNow(outputBlock, "UtcNow: ..........", saveUtcNow);
      DisplayNow(outputBlock, "Now: .............", saveNow);
      outputBlock.Text += "\n";

      // Change the Kind property of the current moment to 
      // DateTimeKind.Utc and display the result.

      myDt = DateTime.SpecifyKind(saveNow, DateTimeKind.Utc);
      Display(outputBlock, "Utc: .............", myDt);

      // Change the Kind property of the current moment to 
      // DateTimeKind.Local and display the result.

      myDt = DateTime.SpecifyKind(saveNow, DateTimeKind.Local);
      Display(outputBlock, "Local: ...........", myDt);

      // Change the Kind property of the current moment to 
      // DateTimeKind.Unspecified and display the result.

      myDt = DateTime.SpecifyKind(saveNow, DateTimeKind.Unspecified);
      Display(outputBlock, "Unspecified: .....", myDt);
   }

   // Display the value and Kind property of a DateTime structure, the 
   // DateTime structure converted to local time, and the DateTime 
   // structure converted to universal time. 

   public static string datePatt = @"M/d/yyyy hh:mm:ss tt";
   public static void Display(System.Windows.Controls.TextBlock outputBlock, string title, DateTime inputDt)
   {
      DateTime dispDt = inputDt;
      string dtString;

      // Display the original DateTime.

      dtString = dispDt.ToString(datePatt);
      outputBlock.Text += String.Format("{0} {1}, Kind = {2}",
                        title, dtString, dispDt.Kind) + "\n";

      // Convert inputDt to local time and display the result. 
      // If inputDt.Kind is DateTimeKind.Utc, the conversion is performed.
      // If inputDt.Kind is DateTimeKind.Local, the conversion is not performed.
      // If inputDt.Kind is DateTimeKind.Unspecified, the conversion is 
      // performed as if inputDt was universal time.

      dispDt = inputDt.ToLocalTime();
      dtString = dispDt.ToString(datePatt);
      outputBlock.Text += String.Format("  ToLocalTime:     {0}, Kind = {1}",
                        dtString, dispDt.Kind) + "\n";

      // Convert inputDt to universal time and display the result. 
      // If inputDt.Kind is DateTimeKind.Utc, the conversion is not performed.
      // If inputDt.Kind is DateTimeKind.Local, the conversion is performed.
      // If inputDt.Kind is DateTimeKind.Unspecified, the conversion is 
      // performed as if inputDt was local time.

      dispDt = inputDt.ToUniversalTime();
      dtString = dispDt.ToString(datePatt);
      outputBlock.Text += String.Format("  ToUniversalTime: {0}, Kind = {1}",
                        dtString, dispDt.Kind) + "\n";
      outputBlock.Text += "\n";
   }

   // Display the value and Kind property for DateTime.Now and DateTime.UtcNow.

   public static void DisplayNow(System.Windows.Controls.TextBlock outputBlock, string title, DateTime inputDt)
   {
      string dtString = inputDt.ToString(datePatt);
      outputBlock.Text += String.Format("{0} {1}, Kind = {2}",
                        title, dtString, inputDt.Kind) + "\n";
   }
}

/*
This code example produces the following results:

UtcNow: .......... 5/6/2005 09:34:42 PM, Kind = Utc
Now: ............. 5/6/2005 02:34:42 PM, Kind = Local

Utc: ............. 5/6/2005 02:34:42 PM, Kind = Utc
  ToLocalTime:     5/6/2005 07:34:42 AM, Kind = Local
  ToUniversalTime: 5/6/2005 02:34:42 PM, Kind = Utc

Local: ........... 5/6/2005 02:34:42 PM, Kind = Local
  ToLocalTime:     5/6/2005 02:34:42 PM, Kind = Local
  ToUniversalTime: 5/6/2005 09:34:42 PM, Kind = Utc

Unspecified: ..... 5/6/2005 02:34:42 PM, Kind = Unspecified
  ToLocalTime:     5/6/2005 07:34:42 AM, Kind = Local
  ToUniversalTime: 5/6/2005 09:34:42 PM, Kind = Utc

*/


Windows Phone OS

지원되는 버전: 8.0, 7.1, 7.0

Windows Phone

표시:
© 2015 Microsoft