【问题标题】:How to get yyyy-mm-dd hh:mm:ss format from "2015-06-26T00:10:00+01:00" in swift如何快速从“2015-06-26T00:10:00+01:00”获取 yyyy-mm-dd hh:mm:ss 格式
【发布时间】:2015-07-01 11:31:56
【问题描述】:
我遇到了一个问题,我必须将日期格式为 2015-06-26T00:10:00+01:00 转换为 yyyy-mm-dd hh:mm:ss
请给我一些想法如何做到这一点?
let formatter = NSDateFormatter()
formatter.dateFormat = "yyyy-MM-dd hh:mm:ss"
let startTimeString = "2015-06-26T00:10:00+01:00"
let startTime = formatter.dateFromString(startTimeString)
print("start time : \(startTime)")
输出是开始时间:无
【问题讨论】:
标签:
ios
swift
date-format
【解决方案1】:
let startTimeString = "2015-06-26T00:10:00+01:00"
// First convert the original formatted date/time to a string:
let deFormatter = NSDateFormatter()
deFormatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ssZ"
let startTime = deFormatter.dateFromString(startTimeString)
print(startTime!) // 2015-06-25 23:10:00 +0000
// Note that `println` use the `description` method which defaults to UTC.
// Then convert the date/time to the desired formatted string:
let formatter = NSDateFormatter()
formatter.dateFormat = "yyyy-MM-dd HH:mm:ss"
let timeString = formatter.stringFromDate(startTime!)
print(timeString) // 2015-06-25 19:10:00
// Note that `NSDateFormatter` defaults to the local time zone.
见:ICU Formatting Dates and Times)
【解决方案2】:
你也试过这个吗?
var formatter: NSDateFormatter = NSDateFormatter()
formatter.dateFormat = "yyyy-MM-dd-HH-mm-ss"
let dateTimePrefix: String = formatter.stringFromDate(NSDate())
【解决方案3】:
请试试这个:
let dateString = "2015-06-26T00:10:00+01:00"
let formatter = DateFormatter()
formatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ssxxxxx"
if let dateFromString = formatter.date(from: dateString) {
formatter.dateFormat = "yyyy-MM-dd HH:mm" //which format is needed
let stringFromDate = formatter.string(from: dateFromString)
print(stringFromDate)
}
【解决方案4】:
对于 Swift 5
let formatter: DateFormatter = DateFormatter()
formatter.dateFormat = "yyyy-MM-dd HH:mm:ss"
let dateTime: String = formatter.string(from: Date())