C#-এ DateTime.FromFileTimeUtc() মেথডটি নির্দিষ্ট উইন্ডোজ ফাইল টাইমকে (Windows file time) সমতুল্য UTC (Coordinated Universal Time) 시간에 রূপান্তর করে। উইন্ডোজ ফাইল টাইম ১৬০১ সালের ১ জানুয়ারি থেকে ১০০-ন্যানোসেকেন্ড টিকের সংখ্যা হিসেবে সংরক্ষিত থাকে।
সিনট্যাক্স (Syntax)
public static DateTime FromFileTimeUtc(long time);
এখানে time প্যারামিটারটি হলো উইন্ডোজ ফাইল টাইম, যা টিক্স (১০০-ন্যানোসেকেন্ড ইন্টারভাল) আকারে প্রকাশ করা হয়।
উদাহরণ ১: নির্দিষ্ট ফাইল টাইম থেকে UTC
using System;
public class Demo
{
public static void Main()
{
DateTime d1 = DateTime.FromFileTimeUtc(6500000000000);
System.Console.WriteLine("DateTime = {0:dd} {0:y}, {0:hh}:{0:mm}:{0:ss} ", d1);
}
}
আউটপুট
DateTime = 08 January 1601, 12:33:20
উদাহরণ ২: একাধিক ফাইল টাইম কনভার্সন
using System;
public class Demo
{
public static void Main()
{
DateTime d1 = DateTime.FromFileTimeUtc(0);
DateTime d2 = DateTime.FromFileTimeUtc(850000000000000);
Console.WriteLine("DateTime = {0:dd} {0:y}, {0:hh}:{0:mm}:{0:ss} ", d1);
Console.WriteLine("New DateTime = {0:dd} {0:y}, {0:hh}:{0:mm}:{0:ss} ", d2);
}
}
আউটপুট
DateTime = 01 January 1601, 12:00:00 New DateTime = 11 September 1603, 07:06:40
মূল koncept: উইন্ডোজ ফাইল টাইম
- উইন্ডোজ ফাইল টাইম ১৬০১ সালের ১ জানুয়ারি ০০:০০:০০ UTC থেকে শুরু হয়
- প্রতি টিক = ১০০ ন্যানোসেকেন্ড = ০.০০০১ মিলিসেকেন্ড
- ১ সেকেন্ড = ১০,০০০,০০০ টিক
- NTFS ফাইল সিস্টেমে ফাইল তৈরির সময়, শেষ এক্সেস টাইম, শেষ মডিফিকেশন টাইম এই ফরম্যাটে সংরক্ষিত থাকে
প্রায়োগিক ব্যবহার: ফাইল সিস্টেম টাইম পড়া
using System;
using System.IO;
public class FileTimeDemo
{
public static void Main()
{
string filePath = @"C:\Windows\notepad.exe";
if (File.Exists(filePath))
{
long creationTimeUtc = File.GetCreationTimeUtc(filePath).ToFileTimeUtc();
DateTime dt = DateTime.FromFileTimeUtc(creationTimeUtc);
Console.WriteLine("File Creation Time (UTC): " + dt);
}
}
}
সংশ্লিষ্ট মেথড: DateTime.ToFileTimeUtc() (UTC DateTime -> File Time), DateTime.FromFileTime() (File Time -> Local Time)