はじめに
だいぶ久しぶりに更新します、どうまずです。
Swift3でいろいろ苦戦してまして、そんな苦悩の一部を記載しときます。
苦戦した点、それは「現在の日付・曜日を取得する。」です。
本文
私の勉強不足か理解力不足か、ネットの記事を参考にしてもできなかったので、記載します。
多くのサイトを参考にすると、下記の記載がありましたので、とりあえずやってみました。
let now = NSDate()
print(now)
結果は 「2016-10-06 11:35:02 +0000」となりましたが、
時間がずれている。
テストしているシミュレータの時間かと思ったが違う様子・・・
どうやら、グリニッジ標準時間をとってしまうという仕様とのこと。
あと、NSCalendarだけを使うと記事が多いですが、私が悪いのかSwift3だからなのか、エラーになってしまい、利用を断念しました。
結局、NSCalendarとCalendarを組み合わせればいいようです。
曜日は下記のような記載で取得できました。
let comp = Calendar.Component.weekday
let weekday = NSCalendar.current.component(comp, from: NSDate() as Date)
print(weekday) // 1が日曜日 7が土曜日
Calendar.Component.yearに変えたら年が、hourに変更すれば時が取得できました。
時間を確認したところ、シミュレータが表示している通りの時間が取得できました。
ただし、私は曜日の配列を月曜からにしてしまったから、修正しなきゃ・・・