DateTime.FromFileTime(Int64)方法用于将指定的Windows文件时间转换为等效的本地时间。
Syntax: public static DateTime FromFileTime (long fileTime);
Here, it takes a Windows file time expressed in ticks.
Return Value: This method returns an object that represents the local time equivalent of the date and time represented by the fileTime parameter.
Exception: This method will give ArgumentOutOfRangeException if the fileTime is less than 0 or represents a time greater than MaxValue.
下面的程序说明了DateTime.FromFileTime(Int64)方法的用法:
范例1:
// C# program to demonstrate the
// DateTime.FromFileTime(Int64) Method
using System;
using System.Globalization;
class GFG {
// Main Method
public static void Main()
{
try {
// creating object of DateTime
DateTime date1 = new DateTime(2010, 3, 14, 2, 30, 00);
// converting 2500000000000 file
// time represented in ticks
// into DateTime format
// using FromBinary() method
DateTime date2 = DateTime.FromFileTime(2500000000000);
// Display the date1
System.Console.WriteLine("DateTime before "
+ "operation: {0:y} {0:dd}", date1);
// Display the date2
System.Console.WriteLine("\nDateTime after"
+ " operation: {0:y} {0:dd}", date2);
}
catch (ArgumentOutOfRangeException e)
{
Console.Write("Exception Thrown: ");
Console.Write("{0}", e.GetType(), e.Message);
}
}
}
输出:
DateTime before operation: 2010 March 14
DateTime after operation: 1601 January 03
示例2:对于ArgumentOutOfRangeException
// C# program to demonstrate the
// DateTime.FromFileTime() Method
using System;
using System.Globalization;
class GFG {
// Main Method
public static void Main()
{
try {
// creating object of DateTime
DateTime date1 = new DateTime(2010, 3,
14, 2, 30, 00);
// converting -1 file time
// represented in ticks
// into DateTime format
// using FromBinary() method
DateTime date2 = DateTime.FromFileTime(-1);
// Display the date1
System.Console.WriteLine("DateTime before "
+ "operation: {0:y} {0:dd}",date1);
// Display the date2
System.Console.WriteLine("\nDateTime after"
+ " operation: {0:y} {0:dd}", date2);
}
catch (ArgumentOutOfRangeException e) {
Console.WriteLine("fileTime is less than 0 ");
Console.Write("Exception Thrown: ");
Console.Write("{0}", e.GetType(), e.Message);
}
}
}
输出:
fileTime is less than 0
Exception Thrown: System.ArgumentOutOfRangeException
参考:
- https://docs.microsoft.com/zh-cn/dotnet/api/system.datetime.fromfiletime?view=netframework-4.7.2