DateTime.ToFileTime 메서드


현재 DateTime 개체의 값을 Windows 파일 시간으로 변환합니다.Converts the value of the current DateTime object to a Windows file time.

 long ToFileTime();
public long ToFileTime ();
member this.ToFileTime : unit -> int64
Public Function ToFileTime () As Long


Windows 파일 시간으로 표시되는 현재 DateTime 개체의 값입니다.The value of the current DateTime object expressed as a Windows file time.


결과 파일 시간이 서기 1601년 1월 1일 12시 자정(UTC) 이전의 날짜 및 시간을The resulting file time would represent a date and time before 12:00 midnight January 1, 1601 C.E. 나타냅니다.UTC.


다음 예제는 ToFileTime 메서드.The following example demonstrates the ToFileTime method.

int main()
   System::Console::WriteLine( "Enter the file path:" );
   String^ filePath = System::Console::ReadLine();
   if ( System::IO::File::Exists( filePath ) )
      System::DateTime fileCreationDateTime = System::IO::File::GetCreationTime( filePath );
      __int64 fileCreationFileTime = fileCreationDateTime.ToFileTime();
      System::Console::WriteLine( "{0} in file time is {1}.", fileCreationDateTime, fileCreationFileTime );
      System::Console::WriteLine( "{0} is an invalid file", filePath );

static void Main(string[] args)
    System.Console.WriteLine("Enter the file path:");
    string filePath = System.Console.ReadLine();

    if (System.IO.File.Exists(filePath)) {
        System.DateTime fileCreationDateTime = 

        long fileCreationFileTime = fileCreationDateTime.ToFileTime();

        System.Console.WriteLine("{0} in file time is {1}.",
    else {
        System.Console.WriteLine("{0} is an invalid file", filePath);
Public Shared Sub Main()

   System.Console.WriteLine("Enter the file path:")
   Dim filePath As String
   filePath = System.Console.ReadLine()

   If System.IO.File.Exists(filePath) Then
      Dim fileCreationDateTime As System.DateTime
      fileCreationDateTime = System.IO.File.GetCreationTime(filePath)

      Dim fileCreationFileTime As Long
      fileCreationFileTime = fileCreationDateTime.ToFileTime()

      System.Console.WriteLine("{0} in file time is {1}.", _
                               fileCreationDateTime, _
      System.Console.WriteLine("{0} is an invalid file", filePath)
   End If
End Sub


Windows 파일 시간은 서 기 1601 년 1 월 1 일 자정 12 시 이후 경과한 100 나노초 간격의 수를 나타내는 64 비트 값A Windows file time is a 64-bit value that represents the number of 100-nanosecond intervals that have elapsed since 12:00 midnight, January 1, 1601 A.D. (C.E.) UTC (Coordinated Universal Time)입니다.(C.E.) Coordinated Universal Time (UTC). Windows 파일 시간을 사용 하 여 애플리케이션 액세스를 만들거나 파일을 쓸 때 기록.Windows uses a file time to record when an application creates, accesses, or writes to a file.

ToFileTime 메서드를 Kind 속성을 확인 하는지 여부를 현재 DateTime 개체가 현지 시간을 UTC 시간, 또는 알 수 없는 종류의 현지 시간으로 간주 되는 시간.The ToFileTime method uses the Kind property to determine whether the current DateTime object is a local time, a UTC time, or an unspecified kind of time which is treated as a local time.

호출자 참고

일반적으로 FromFileTime(Int64) 메서드 복원을 DateTime 하 여 저장 된 값을 ToFileTime() 메서드.Ordinarily, the FromFileTime(Int64) method restores a DateTime value that was saved by the ToFileTime() method. 그러나 두 값 다음 조건에서 다를 수 있습니다.However, the two values may differ under the following conditions: -Serialization 및 deserialization을 DateTime 값이 서로 다른 시간대에 발생 합니다.- If the serialization and deserialization of the DateTime value occur in different time zones. 예를 들어 경우는 DateTime 오후 12 시 30 분의 시간 값For example, if a DateTime value with a time of 12:30 P.M. 미국 동부 표준 시간대 serialize 되며 미국에서 deserialize 될 태평양 표준시, 오후 12 시 30 분의 원래 값in the U.S. Eastern Time zone is serialized, and then deserialized in the U.S. Pacific Time zone, the original value of 12:30 P.M. 오전 9 시 30 분에 맞게 조정 됩니다.is adjusted to 9:30 A.M. 에 두 표준 시간대 간의 차이 반영 합니다.to reflect the difference between the two time zones.

-는 DateTime 값 serialize 되는 현지 표준 시간대에서 잘못 된 시간을 나타냅니다.- If the DateTime value that is serialized represents an invalid time in the local time zone. 이 경우에 ToFileTime() 메서드를 복원 된 조정 DateTime 현지 표준 시간대에 유효한 시간을 나타낼 수 있도록 값.In this case, the ToFileTime() method adjusts the restored DateTime value so that it represents a valid time in the local time zone.

표준 시간에서 일광 절약 시간 전환 미국에서 발생 하는 예를 들어, 오전 2 시, 오전 3 시에 한 시간 전진할 때 2010 년 3 월 14 일 태평양 표준 시간대For example, the transition from standard time to daylight saving time occurs in the U.S. Pacific Time zone on March 14, 2010, at 2:00 A.M., when the time advances by one hour, to 3:00 A.M. 이 시간 간격은이 표준 시간대에 존재 하지 않는 시간 간격, 잘못 된 시간입니다.This hour interval is an invalid time, that is, a time interval that does not exist in this time zone. 다음 예제에서는 내에 포함 되는 시간이이 범위를 정수 (long) 값으로 변환 됩니다는 ToFileTime() 메서드에 의해 복원 되 고는 FromFileTime(Int64) 메서드를 원래 값은 시간으로 조정 되는 유효 합니다.The following example shows that when a time that falls within this range is converted to a long integer value by the ToFileTime() method and is then restored by the FromFileTime(Int64) method, the original value is adjusted to become a valid time. 여부를 특정 날짜 및 시간 값에 적용 될 수 있습니다 수정 전달 하 여 확인할 수 있습니다는 IsInvalidTime(DateTime) 메서드를 예로 보여 줍니다.You can determine whether a particular date and time value may be subject to modification by passing it to the IsInvalidTime(DateTime) method, as the example illustrates.

[! 코드 csharpSystem.DateTime.FromFileTime#1] [! 코드 vbSystem.DateTime.FromFileTime#1][!code-csharpSystem.DateTime.FromFileTime#1] [!code-vbSystem.DateTime.FromFileTime#1]

적용 대상

추가 정보