• ベストアンサー

日付から曜日を求めたい

Windows APIでプログラミングしています。時間のデータはSYSTEMTIMEを使ってます。 日付(wYear, wMonth, wDay)のみの情報から、曜日(wDayOfWeek)を求めたいのですが、どのような方法があるでしょうか?曜日を求めるAPI関数は存在しますか?

質問者が選んだベストアンサー

  • ベストアンサー
  • mtaka2
  • ベストアンサー率73% (867/1179)
回答No.1

曜日が入っていない状態のSYSTEMTIMEからSystemTimeToFileTimeでFILETIMEに変換し、 FileTimeToSystemTimeでSYSTEMTIMEに戻せば、曜日が入った状態になります。

BearCave
質問者

お礼

そんなシンプルな方法があるんですね。ありがとうございました!

その他の回答 (1)

  • bonchin
  • ベストアンサー率28% (7/25)
回答No.2

NO1の回答は素晴らしいです。思い付きませんでした。 WinAPI限定しなければ、mktime, localtimeの2つC関数で同じ結果が得られます。 自分で計算することも可能、1970/1/1の曜日を調べて、計算したい日との日数をmod 7で、曜日の計算ができます。 ところで、最初の曜日って誰がどう決めているのでしょうかね。

BearCave
質問者

お礼

UNIX系関数を使った方法ですね。アドバイスありがとうございました。

関連するQ&A