Partage via


DateTime.ToFileTime Méthode

Définition

Convertit la valeur de l'objet DateTime actuel en heure de fichier Windows.

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

Retours

Int64

Valeur de l'objet DateTime actuel exprimée sous forme d'heure de fichier Windows.

Exceptions

L’heure du fichier résultante représente une date et une heure avant 00:00 (minuit) le 1er janvier 1601 (notre ère) UTC.

Exemples

L’exemple suivant illustre la ToFileTime méthode.

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 );
   }
   else
   {
      System::Console::WriteLine( "{0} is an invalid file", filePath );
   }
}
open System.IO

printfn "Enter the file path:"
let filePath = stdin.ReadLine()

if File.Exists filePath then
    let fileCreationDateTime =
        File.GetCreationTime filePath

    let fileCreationFileTime = fileCreationDateTime.ToFileTime()

    printfn $"{fileCreationDateTime} in file time is {fileCreationFileTime}."

else
    printfn $"{filePath} is an invalid file"
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 =
            System.IO.File.GetCreationTime(filePath);

        long fileCreationFileTime = fileCreationDateTime.ToFileTime();

        System.Console.WriteLine("{0} in file time is {1}.",
                                 fileCreationDateTime,
                                 fileCreationFileTime);
    }
    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, _
                               fileCreationFileTime)
   Else
      System.Console.WriteLine("{0} is an invalid file", filePath)
   End If
End Sub

Remarques

Une heure de fichier Windows est une valeur 64 bits qui représente le nombre d’intervalles de 100 nanosecondes qui se sont écoulés depuis 12:00 minuit, 1er janvier 1601 A.D. (ère commune) Temps universel coordonné (UTC) Windows utilise une heure de fichier pour enregistrer lorsqu’une application crée, accède ou écrit dans un fichier.

La ToFileTime méthode utilise la Kind propriété pour déterminer si l’objet actuel DateTime est une heure locale, une heure UTC ou un type d’heure non spécifié qui est traité comme une heure locale.

Notes pour les appelants

En règle générale, la FromFileTime(Int64) méthode restaure une DateTime valeur enregistrée par la ToFileTime() méthode. Toutefois, les deux valeurs peuvent différer dans les conditions suivantes :

  • Si la sérialisation et la désérialisation de la DateTime valeur se produisent dans différents fuseaux horaires. Par exemple, si une DateTime valeur avec une heure de 12:30 P.M. dans le fuseau horaire de l’Est des États-Unis est sérialisé, puis désérialisé dans le fuseau horaire du Pacifique des États-Unis, la valeur d’origine de 12:30 P.M. est ajusté à 9 h 30 pour refléter la différence entre les deux fuseaux horaires.

  • Si la DateTime valeur sérialisée représente une heure non valide dans le fuseau horaire local. Dans ce cas, la ToFileTime() méthode ajuste la valeur restaurée DateTime afin qu’elle représente une heure valide dans le fuseau horaire local.

Par exemple, la transition entre l’heure standard et l’heure d’été se produit dans le fuseau horaire du Pacifique des États-Unis le 14 mars 2010, à 2 h 00, lorsque l’heure avance d’une heure à 3 h. Cet intervalle d’heure est une heure non valide, c’est-à-dire un intervalle de temps qui n’existe pas dans ce fuseau horaire. L’exemple suivant montre que lorsqu’une heure comprise dans cette plage est convertie en valeur entière longue par la ToFileTime() méthode, puis restaurée par la FromFileTime(Int64) méthode, la valeur d’origine est ajustée pour devenir une heure valide. Vous pouvez déterminer si une valeur de date et d’heure particulière peut être soumise à une modification en la transmettant à la IsInvalidTime(DateTime) méthode, comme l’illustre l’exemple.

::code language="csharp » source="~/snippets/csharp/System/DateTime/FromFileTime/fromfiletime1.cs » id="Snippet1 »::: :::code language="fsharp » source="~/snippets/fsharp/VS_Snippets_CLR_System/system.datetime .fromfiletime/fs/fromfiletime1.fs » id="Snippet1 »::: :::code language="vb » source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.datetime.fromfiletime/vb/fromfiletime1.vb » id="Snippet1 »:::

S’applique à

Voir aussi