問題タブ [filetime]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - C ++でミリ秒時間をFILETIMEに変換する方法
時間は秒単位です (例: 1505306792)。
これを FILETIME に変換する方法は?
これが私が試したコードです
この結果 FILETIME は 1648-09-13 15:34:00 となります
この日付は 2017-09-13 12:46:31 になると予想しています。オンラインコンバーターを使用する場合も同じです。
これを解決する方法はありますか?
ブーストを使用していくつかの回答を見てきましたが、私のプロジェクトで利用できます。
c++ - FILETIME を日付や時刻を含むローカライズされた文字列としてフォーマットする WinAPI
FILETIME日付、時刻、または日付と時刻を一緒に出力して、日付時刻をローカライズされた文字列にフォーマットするための低レベルの WinAPI を探しています。
MFCを逆にすることで、「ちょっと」機能する機能COleDateTimeを見つけることができました。VarBstrFromDateだから私はそれを達成できる別のより信頼できる API があるかどうかを確認しようとしていました.
私が見ることができる2つの問題がありVarBstrFromDateます:
1)日付または時刻の部分を確実に報告しません。たとえば、次のように呼び出すとmidnight Dec. 31, 1899:
"12/31/1899"時刻部分なしで返されます。
または、私がそれを呼び出す場合は、次のように言いますnoon Dec. 30, 1899:
"12:00:00 PM"日付部分なしで返されます。
2)FILETIMEさらに、 からへ の変換DATEは、特に 1899 年 12 月 30 日より前の日付の場合、やや注意が必要です。MFC を逆にすることで、構造体SystemTimeToVariantTimeを介して変換できることがわかりましたSYSTEMTIME。ちょっと後ろ向きだけどOK。しかし、その後、私はこの怪物を見ましたatlcore.h:
によって返された結果をチェックしてから、そのようにぎこちない方法でSystemTimeToVariantTime渡す理由を知っていますか? それは間違った結果を返す可能性があるVariantTimeToSystemTimeということですか、それとも何ですか?SystemTimeToVariantTime
とにかく、浮動小数点への変換に依存しない別の API を見つけることを考えていましたDATE。
.net - .Net で SystemTime と FileTime を変換するにはどうすればよいですか?
https://msdn.microsoft.com/en-us/library/windows/desktop/ms724290(v=vs.85).aspxによると、ファイル時間は 100 ナノ秒を表す 64 ビット値です。協定世界時 (UTC) 1601 年 1 月 1 日午前 0 時から経過した間隔。
SystemTimeとの間の変換にFileTimeは、Windows API 関数SystemTimeToFileTimeとFileTimeToSystemTimeを使用できます。
これはあまり珍しい作業ではないと思うので、おそらくここで何かが欠けています。ただし、SO を検索[.net] systemtimetofiletimeすると、結果として 1 つの (反対票を投じた) 回答のみが提供され、関連する質問はありません。
おそらく、適切な用語についての知識が不足しているだけでありSystemTimeToFileTime、.Net の世界では非常に異なるものと呼ばれています。
とにかく、問題は、 .NetSystemTimeとの間で適切に変換するにはどうすればよいかということです。FileTime