내보내기(0) 인쇄
모두 확장
정보
요청한 주제가 아래에 표시됩니다. 그러나 이 주제는 이 라이브러리에 포함되지 않습니다.

DateTime.FromFileTime 메서드

2013-12-13

지정한 Windows 파일 시간을 해당 현지 시간으로 변환합니다.

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

public static DateTime FromFileTime(
	long fileTime
)

매개 변수

fileTime
형식: System.Int64
틱으로 표현된 Windows 파일 시간입니다.

반환 값

형식: System.DateTime
fileTime 매개 변수가 나타내는 날짜와 시간에 해당하는 현지 시간을 나타내는 개체입니다.

예외조건
ArgumentOutOfRangeException

fileTime이 0보다 작거나 DateTime.MaxValue보다 큰 시간을 나타내는 경우

Windows 파일 시간은 서기 1601년 1월 1일 12:00 자정 UTC(협정 세계시)부터 경과한 100나노초 간격 수로 나타낸 64비트 값입니다. Windows에서는 파일 시간을 사용하여 응용프로그램에서 파일을 만들거나 액세스하거나 파일에 쓴 시간을 기록합니다.

fileTime 매개 변수는 100나노초 틱으로 표시되는 파일 시간을 지정합니다.

반환 값은 Kind 속성이 DateTimeKind.LocalDateTime입니다.

호출자 참고 사항

일반적으로 FromFileTime 메서드는 ToFileTime 메서드가 저장한 DateTime 값을 복원합니다. 그러나 다음과 같은 조건에서 두 개의 값이 다를 수 있습니다.

  • DateTime 값의 serialization 및 deserialization이 다른 표준 시간대에 발생할 경우. 예를 들어, 시간이 미국 동부 표준 시간대로 오후 12:30분인 DateTime 값이 직렬화된 다음 미국 태평양 표준 시간대에서 역직렬화된 경우 원래 값인 오후 12:30분은 두 시간대 사이의 차이를 반영하기 위해 오전 9:30으로 조정됩니다.

  • serialize된 DateTime 값이 현지 표준 시간대로 잘못된 시간을 나타내는 경우. 이 경우 ToFileTime 메서드는 로컬 표준 시간대에서 유효한 값을 나타내도록 복원된 DateTime 값을 조정합니다.

    예를 들어, 표준 시간에서 일광 절약 시간으로의 전환은 시간이 미국 태평양 표준 시간대 2010년 3월 14일 오전 2:00시에서 오전 3:00시로 한 시간 전진할 때 발생합니다. 이 시간 간격은 잘못된 시간입니다. 즉, 이 표준 시간대에 존재하지 않는 시간 간격입니다. 다음 예제에서는 이 범위 내에 포함되는 시간이 ToFileTime 메서드에 의해 정수(Long) 값으로 변환되고 FromFileTime 메서드에 의해 복원되면 원래 값이 유효한 시간으로 조정되는 것을 보여 줍니다. 다음 예제와 같이 TimeZoneInfo.IsInvalidTime 메서드에 전달하여 특정 날짜 및 시간 값을 수정할 수 있는지 여부를 확인할 수 있습니다.

    
    using System;
    
    public class Example
    {
       public static void Demo(System.Windows.Controls.TextBlock outputBlock)
       {
          DateTime date1 = new DateTime(2010, 3, 14, 2, 30, 00);
          outputBlock.Text += String.Format("Invalid Time: {0}",
                            TimeZoneInfo.Local.IsInvalidTime(date1)) + "\n";
          long ft = date1.ToFileTime();
          DateTime date2 = DateTime.FromFileTime(ft);
          outputBlock.Text += String.Format("{0} -> {1}", date1, date2) + "\n";
       }
    }
    // The example displays the following output:
    //       Invalid Time: True
    //       3/14/2010 2:30:00 AM -> 3/14/2010 3:30:00 AM
    
    
    

다음 예제에서는 FromFileTime 메서드를 보여 줍니다.


public System.TimeSpan FileAge(long fileCreationTime)
{

   System.DateTime now = System.DateTime.Now;
   try
   {
      System.DateTime fCreationTime =
         System.DateTime.FromFileTime(fileCreationTime);
      System.TimeSpan fileAge = now.Subtract(fCreationTime);
      return fileAge;
   }
   catch (ArgumentOutOfRangeException)
   {
      // fileCreationTime is not valid, so re-throw the exception.
      throw;
   }
}


Windows Phone OS

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

Windows Phone

Microsoft는 MSDN 웹 사이트에 대한 귀하의 의견을 이해하기 위해 온라인 설문 조사를 진행하고 있습니다. 참여하도록 선택하시면 MSDN 웹 사이트에서 나가실 때 온라인 설문 조사가 표시됩니다.

참여하시겠습니까?
표시:
© 2014 Microsoft