DOS時刻形式 → FILETIME構造体 変換

この辺の関数(Win32API)を使う。

// DOS時刻形式 → FILETIME構造体
BOOL DosDateTimeToFileTime(
    WORD wFatDate,          // 16 ビットの MS-DOS 日付
    WORD wFatTime,          // 16 ビットの MS-DOS 時刻
    LPFILETIME lpFileTime   // 64 ビットのファイル時刻
);
// 参考 : http://msdn.microsoft.com/library/ja/default.asp?url=/library/ja/jpsysinf/html/_win32_dosdatetimetofiletime.asp

// FILETIME構造体 → DOS時刻形式
BOOL FileTimeToDosDateTime(
    CONST FILETIME *lpFileTime, // 64 ビットのファイル時刻
    LPWORD lpFatDate,           // MS-DOS の日付
    LPWORD lpFatTime            // MS-DOS の時刻
);
// 参考 : http://msdn.microsoft.com/library/ja/default.asp?url=/library/ja/jpsysinf/html/_win32_filetimetodosdatetime.asp

おまけ。
システム時刻への変換

// システム時刻形式 → FILETIME構造体
BOOL SystemTimeToFileTime(
    CONST SYSTEMTIME *lpSystemTime,  // システム日時
    LPFILETIME lpFileTime            // ファイル時刻
);
// 参考 : http://msdn.microsoft.com/library/ja/default.asp?url=/library/ja/jpsysinf/html/_win32_systemtimetofiletime.asp

// FILETIME構造体 → システム時刻形式
BOOL FileTimeToSystemTime(
    CONST FILETIME *lpFileTime,  // 変換するべきファイル時刻
    LPSYSTEMTIME lpSystemTime    // システム日時が格納される構造体
);
// 参考 : http://msdn.microsoft.com/library/ja/default.asp?url=/library/ja/jpsysinf/html/_win32_filetimetosystemtime.asp

コメントを残す

メールアドレスが公開されることはありません。