問題タブ [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