DateTime.FromFileTime(Int64) Метод

Определение

Преобразует заданную временную характеристику файла Windows в ее эквивалент по местному времени.Converts the specified Windows file time to an equivalent local time.

public:
 static DateTime FromFileTime(long fileTime);
public static DateTime FromFileTime (long fileTime);
static member FromFileTime : int64 -> DateTime
Public Shared Function FromFileTime (fileTime As Long) As DateTime

Параметры

fileTime
Int64

Временная характеристика файла Windows, выраженная в тактах.A Windows file time expressed in ticks.

Возвращаемое значение

Объект, представляющий местное время, эквивалентное дате и времени, которые определяются параметром fileTime.An object that represents the local time equivalent of the date and time represented by the fileTime parameter.

Исключения

fileTime меньше 0 или представляет время больше MaxValue.fileTime is less than 0 or represents a time greater than MaxValue.

Примеры

В следующем примере демонстрируется метод FromFileTime.The following example demonstrates the FromFileTime method.

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;
   }
}
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;
    }
}
Public Function FileAge(ByVal fileCreationTime As Long) As System.TimeSpan
   Dim now As System.DateTime
   now = System.DateTime.Now

   Try
      Dim fCreationTime As System.DateTime
      Dim fAge As System.TimeSpan
      fCreationTime = System.DateTime.FromFileTime(fileCreationTime)
      fAge = now.Subtract(fCreationTime)
      Return fAge
   Catch exp As ArgumentOutOfRangeException
      ' fileCreationTime is not valid, so re-throw the exception.
      Throw
   End Try
End Function

Комментарии

Время файла Windows — это 64-разрядное значение, представляющее количество интервалов 100-наносекундных, истекших с 12:00 полуночи, 1 января 1601 г.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. эры Время в формате UTC.(C.E.) Coordinated Universal Time (UTC). Windows использует время файла для записи, когда приложение создает, обращается к файлу или выполняет запись в него.Windows uses a file time to record when an application creates, accesses, or writes to a file.

Параметр fileTime задает время файла, выраженное в тактах 100-наносекундных.The fileTime parameter specifies a file time expressed in 100-nanosecond ticks.

Начиная с версии .NET Framework 2,0, возвращаемое значение является DateTime, свойство Kind которого DateTimeKind.Local.Starting with the .NET Framework version 2.0, the return value is a DateTime whose Kind property is DateTimeKind.Local.

Примечания для тех, кто вызывает этот метод

Обычно метод 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: — Если сериализация и десериализация значения DateTime происходят в разных часовых поясах.- If the serialization and deserialization of the DateTime value occur in different time zones. Например, если DateTime значение со временем 12:30 P.M.For example, if a DateTime value with a time of 12:30 P.M. в часовом поясе США Восточной регион сериализуется, а затем десериализуется в Американском Тихоокеанском часовом поясе, исходное значение 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 представляет недопустимое время в местном часовом поясе.- 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.

Например, переход с зимнего времени на летнее время происходит в тихоокеанском часовом поясе США 14 марта 2010, в 2:00 утра, когда время увеличивается на час, до 3:00 утра.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. В следующем примере показано, что если время, попадающее в этот диапазон, преобразуется в длинное целое число с помощью метода 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. фромфилетиме # 1] [! код-VBSystem. DateTime. фромфилетиме # 1][!code-csharpSystem.DateTime.FromFileTime#1] [!code-vbSystem.DateTime.FromFileTime#1]

Применяется к

Дополнительно