web-dev-qa-db-ja.com

オプションの文字列を日付に変換

このOptional(2015-07-27 19:29:50 +0000)を文字列として持っていますか?そして、それを日付(NSDate)に変換したいのですが、解決策をたくさん探していたことがわかりませんが、コーディングが初めてなので、誰かが助けてくれれば感謝しています。

これは現在、文字列を日付に変換するために使用しているものです。

注:dateStringはOptional(2015-07-27 19:29:50 +0000)です

dateFormatter = NSDateFormatter()
println(dateFormatter)
dateFormatter.dateFormat = "yyyy-MM-dd"
let s = dateFormatter.dateFromString(dateString)

私は常にnil値を取得します

12
WDFAN23

NSDateFormatterからnilを取得している場合、誤った日付形式を指定した可能性があります。これを試して:

let strTime = "2015-07-27 19:29:50 +0000"
let formatter = NSDateFormatter()
formatter.dateFormat = "yyyy-MM-dd HH:mm:ss Z"
formatter.dateFromString(strTime) // Returns "Jul 27, 2015, 12:29 PM" PST
42
MirekE

NSDateFormatterを使用し、dateFromString:を呼び出して、文字列から日付を取得します。 AppleのNSDateFormatterドキュメント をご覧ください。

0
Good Doug

In Swift 3.0:

let strTime = "2015-07-27 19:29:50 +0000"
let formatter = NSDateFormatter()
formatter.dateFormat = "yyyy-MM-dd HH:mm:ss Z"
formatter.date(from: strTime) 
0
Muthama Kahohi

dateStringは既に日付であり、文字列に変換する必要があります。以下のコードは正常に動作しています

dateFormatter = NSDateFormatter()println(dateFormatter)dateFormatter.dateFormat = "yyyy-MM-dd" let s = dateFormatter.string(from:dateString)

0
shiva