AM/PM時間を24時間に変換したいとします。変換後の日付が無効です12h - > 24h
let inputDateString = "11:05:45PM"
let dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "HH:mm:ssa"
let inputDate = dateFormatter.dateFromString(inputDateString) // "Jan 1, 2000, 12:05 PM" ???
if let inputDate = inputDate {
dateFormatter.dateFormat = "HH:mm:ss"
print(dateFormatter.stringFromDate(inputDate))
}
- 私は多分それはいくつかの奇妙なタイムゾーンを使用して時間を変換だと思った:それは、しかし、私は奇妙な問題に対して立っている...完全に些細なことする必要があります。だから私は
systemLocale
またはGBのロケールを追加しようとしましたが、それは役に立たなかったのです。 - それから、01.01.2000 12:00:00までの日付を設定できないというアイデアが出てきました。(意味がないのは、少なくとも1970年から働くはずなので)。だから私は2005年にそれを動かすために日、月などを追加しましたが、問題は依然として続きます。
これをテストするには、import Foundation
で簡単にプレイグラウンドに貼り付けることができます。
なぜ私は時間が間違っていますか?
- 編集 -
あなたが"01:05:45PM"
のような他のどの時間にinputDateString
を変更する場合は、inputDate
は同じになります:/しかし、あなたが分または秒を変更した場合、それに応じて更新されます。
最初の書式は「hh:mm:ssa」 – Desdenova
1月2000日である必要があります。それはその中にデフォルトを置きます。 – pedrouan
@pedrouanそれは問題ではありませんでした。とにかく、その答えはすでに下にある;)。 – Vive