Baca dalam bahasa Inggris

Bagikan melalui


DateTime.FromFileTime(Int64) Metode

Definisi

Mengonversi waktu file Windows yang ditentukan ke waktu lokal yang setara.

public static DateTime FromFileTime(long fileTime);

Parameter

fileTime
Int64

Waktu file Windows yang dinyatakan dalam tanda centang.

Mengembalikan

Objek yang mewakili waktu lokal yang setara dengan tanggal dan waktu yang diwakili oleh fileTime parameter .

Pengecualian

fileTime kurang dari 0 atau mewakili waktu yang lebih besar dari DateTime.MaxValue.

Contoh

Contoh berikut menunjukkan FromFileTime metode .

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;
    }
}

Keterangan

Waktu file Windows adalah nilai 64-bit yang menunjukkan jumlah interval 100-nanodetik yang telah berlalu sejak 12:00 tengah malam, 1 Januari 1601 A.D. (C.E.) Waktu Universal Terkoordinasi (UTC). Windows menggunakan waktu file untuk merekam ketika aplikasi membuat, mengakses, atau menulis ke file.

Parameter fileTime menentukan waktu file yang dinyatakan dalam tick 100-nanodetik.

Dimulai dengan .NET Framework versi 2.0, nilai yang dikembalikan adalah yang DateTime propertinya Kind adalah DateTimeKind.Local.

Catatan Bagi Pemanggil

Biasanya, FromFileTime(Int64) metode memulihkan DateTime nilai yang disimpan oleh ToFileTime() metode . Namun, kedua nilai tersebut mungkin berbeda dalam kondisi berikut:

  • Jika serialisasi dan deserialisasi DateTime nilai terjadi di zona waktu yang berbeda. Misalnya, jika DateTime nilai dengan waktu 12:30 P.M. di zona Waktu Timur AS diserialisasikan, dan kemudian dideserialisasi di zona Waktu Pasifik AS, nilai asli 12:30 P.M. disesuaikan menjadi 9:30 A.M. untuk mencerminkan perbedaan antara dua zona waktu.

  • DateTime Jika nilai yang diserialisasikan mewakili waktu yang tidak valid di zona waktu lokal. Dalam hal ini, ToFileTime() metode menyesuaikan nilai yang dipulihkan DateTime sehingga mewakili waktu yang valid di zona waktu lokal.

    Misalnya, transisi dari waktu standar ke waktu musim panas terjadi di zona Waktu Pasifik AS pada 14 Maret 2010, pukul 02.00 WIB, ketika waktu maju satu jam, menjadi 03:00 A.M. Interval jam ini adalah waktu yang tidak valid, yaitu, interval waktu yang tidak ada di zona waktu ini. Contoh berikut menunjukkan bahwa ketika waktu yang termasuk dalam rentang ini dikonversi ke nilai bilangan bulat panjang dengan ToFileTime() metode dan kemudian dipulihkan oleh FromFileTime(Int64) metode , nilai asli disesuaikan untuk menjadi waktu yang valid. Anda dapat menentukan apakah nilai tanggal dan waktu tertentu mungkin tunduk pada modifikasi dengan meneruskannya ke IsInvalidTime(DateTime) metode , seperti yang diilustrasikan contoh.

    using System;
    
    public class Example
    {
       public static void Main()
       {
          DateTime date1 = new DateTime(2010, 3, 14, 2, 30, 00);
          Console.WriteLine("Invalid Time: {0}",
                            TimeZoneInfo.Local.IsInvalidTime(date1));
          long ft = date1.ToFileTime();
          DateTime date2 = DateTime.FromFileTime(ft);
          Console.WriteLine("{0} -> {1}", date1, date2);
       }
    }
    // The example displays the following output:
    //       Invalid Time: True
    //       3/14/2010 2:30:00 AM -> 3/14/2010 3:30:00 AM
    

Berlaku untuk

Produk Versi
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0

Lihat juga