
No.1ベストアンサー
- 回答日時:
COleDateTimeは内部的には、VARIANT データ型DATE (VT_DATE) になり、
そのデータの持ち方はtime_tのように1970年1月1日からの通算秒数ではありません。
MSDN
COleDateTime
http://msdn.microsoft.com/ja-jp/library/38wh24td …
COleDateTimeにtime_tにキャストできる演算子がないので正しい結果が得られないでしょう。
CTimeを使うなりmktimeを使うなりしてtime_tに変換してみてはどうでしょうか?
COleDateTime t1(2011, 3, 8, 12, 34, 56);
SYSTEMTIME st;
t1.GetAsSystemTime(st);
CTime t2(st);
time_t t = t2.GetTime();
ただし、扱える範囲がtime_tとCOleDateTime(DATE)で違うので、範囲外を指定したときを考慮する必要があるかもしれません。
(1970年以前の日付とか)
No.2
- 回答日時:
COleTimeDateSpanを使った方法がありました。
COleDateTime t1(2011, 3, 8, 12, 34, 56);
time_t t = (time_t)(t1 - COleDateTime((time_t)0)).GetTotalSeconds();
この場合も、GetTotalSecondsの結果がマイナスになるケースを考慮する必要があるかも。
ちなみに何のためにtime_tが必要になりますか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
異なるドメインのサイトでcooki...
-
インクルードファイルからのリ...
-
COBOLのCOMP形式について
-
C言語の構造体のサイズについて
-
10Mバイトて文字数に すると何...
-
UTF-8で5~6バイトになる文字コ...
-
DataGridViewの特定列に入力さ...
-
printfの%eで指数部分の桁数を...
-
COBOLでハーフバイト数値を読む...
-
C言語の勉強しています。すみま...
-
stable diffusionのエラー
-
GetWindowTextでアドレスバーか...
-
int型(2バイト)データの分割
-
CreateProcessでの環境変数の設...
-
チェックボックスのvalue値の取...
-
C#でのswitch文
-
クリップボードへのコピー
-
POSTで配列のデータを渡す方法は?
-
表(<table>)の直前が、改行さ...
-
sort関数でひらがなとカタカナ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
PHPのCookieが有るか無いかで、...
-
ゲームノベルのような分岐のあ...
-
異なるドメインのサイトでcooki...
-
COleDateTime とtime_t
-
cookieにカンマ区切りでつめこ...
-
ブラウザ間でCookieを共有する...
-
クッキーを使わないセッション
-
Javascriptのmodalを一度だけ表示
-
JavaScriptで保存したクッキー...
-
javascriptでcookieを削除するには
-
クッキーを連想配列で扱う方法...
-
XML文書の書き方
-
LWP::Simple;でWebページを取得...
-
PHPのgetholidaysを使っていて...
-
UTF-8で5~6バイトになる文字コ...
-
10Mバイトて文字数に すると何...
-
COBOLのCOMP形式について
-
エクセルシート名の制限を変更...
-
Excel VBA メール作成について ...
-
Excel 1セル当りの文字数が2...
おすすめ情報