DateTime.FromFileTime(Int64) Metoda

Definicja

Konwertuje określony czas pliku systemu Windows na odpowiedni czas lokalny.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

Parametry

fileTime
Int64

Czas pliku systemu Windows wyrażony w taktach.A Windows file time expressed in ticks.

Zwraca

Obiekt, który reprezentuje odpowiednik czasu lokalnego daty i godziny reprezentowanej przez parametr fileTime.An object that represents the local time equivalent of the date and time represented by the fileTime parameter.

Wyjątki

fileTime jest mniejsza niż 0 lub reprezentuje czas większy niż MaxValue.fileTime is less than 0 or represents a time greater than MaxValue.

Przykłady

Poniższy przykład demonstruje metodę 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

Uwagi

Czas pliku systemu Windows ma wartość 64-bitową. Reprezentuje ona liczbę 100-nanosekundowych przedziałów czasu, które upłynęły od północy 1 stycznia 1601 roku n.e.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. 0001 Uniwersalny czas koordynowany (UTC).(C.E.) Coordinated Universal Time (UTC). System Windows wykorzystuje czas pliku do rejestrowania informacji o tym, kiedy aplikacja tworzy, uzyskuje dostęp do zapisuje do pliku.Windows uses a file time to record when an application creates, accesses, or writes to a file.

Parametr fileTime określa czas pliku wyrażony w taktach 100-nanosekund.The fileTime parameter specifies a file time expressed in 100-nanosecond ticks.

Począwszy od .NET Framework w wersji 2,0, wartość zwracana jest DateTime, którego właściwość Kind jest DateTimeKind.Local.Starting with the .NET Framework version 2.0, the return value is a DateTime whose Kind property is DateTimeKind.Local.

Uwagi dotyczące wywoływania

Zwykle Metoda FromFileTime(Int64) przywraca wartość DateTime, która została zapisana przez metodę ToFileTime().Ordinarily, the FromFileTime(Int64) method restores a DateTime value that was saved by the ToFileTime() method. Jednak te dwie wartości mogą się różnić w następujących warunkach:However, the two values may differ under the following conditions: — Jeśli Serializacja i deserializacja wartości DateTime występuje w różnych strefach czasowych.- If the serialization and deserialization of the DateTime value occur in different time zones. Na przykład jeśli DateTime wartość o godzinie 12:30For example, if a DateTime value with a time of 12:30 P.M. w środkowym obszarze czasu USA jest serializowany, a następnie deserializowany w strefie czasowej pacyficznego w Stanach Zjednoczonych — oryginalna wartość 12:30 P.M.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. jest dostosowywany do 9:30 ranois adjusted to 9:30 A.M. Aby odzwierciedlić różnicę między dwiema strefami czasowymi.to reflect the difference between the two time zones.

— Jeśli wartość DateTime, która jest serializowana, reprezentuje nieprawidłowy czas w lokalnej strefie czasowej.- If the DateTime value that is serialized represents an invalid time in the local time zone. W takim przypadku Metoda ToFileTime() dostosowuje przywróconą wartość DateTime, aby reprezentować prawidłową godzinę w lokalnej strefie czasowej.In this case, the ToFileTime() method adjusts the restored DateTime value so that it represents a valid time in the local time zone.

Na przykład strefie czasu pacyficznego w Stanach Zjednoczonych przejście od czasu standardowego do czasu letniego nastąpi 14 marca 2010 r. o godzinie 2:00, kiedy czas jest przesuwany o jedną godzinę — na 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. Ten interwał godzinowy jest nieprawidłowy, czyli jest to przedział czasu, który nie istnieje w danej strefie czasowej.This hour interval is an invalid time, that is, a time interval that does not exist in this time zone. Poniższy przykład pokazuje, że gdy czas należący do tego zakresu jest konwertowany na wartość Long Integer przez metodę ToFileTime() i zostanie przywrócona przez metodę FromFileTime(Int64), oryginalna wartość zostanie zmieniona, aby stała się prawidłowym czasem.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. Można określić, czy określona wartość daty i godziny może podlegać modyfikacji, przekazując ją do metody IsInvalidTime(DateTime), jak pokazano w przykładzie.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.

[! code-CSharpSystem. DateTime. FromFileTime # 1] [! code — VBSystem. DateTime. FromFileTime # 1][!code-csharpSystem.DateTime.FromFileTime#1] [!code-vbSystem.DateTime.FromFileTime#1]

Dotyczy

Zobacz też