如何在SWIFT中解析时以一种字符串格式将这个格式的“2015-06-11T00:00:00.000Z”添加到swift中的小时数

如何在SWIFT中解析时以一个字符串格式“2015-06-11T00:00:00.000Z”在swift中添加以swift为单位的小时数。

我试图在ons字符串中添加时间,以便在SWIFT中进行解析。 我有两个texfields表示日期选择器中的日期和时间,但是当我解析字符串时,只显示日期。 我想在字符串中组合日期和时间并将其发送到服务器。 请快速帮助我

您可以使用NSCalendar方法dateBySettingHour执行此操作,如下所示:

Xcode 8.2.1•Swift 3.0.2

let df = DateFormatter() df.calendar = Calendar(identifier: .iso8601) df.locale = Locale(identifier: "en_US_POSIX") df.dateFormat = "yyyy-MM-dd'T'HH:mm:ss.SSS'Z" if let date = df.date(from:"2015-06-11T00:00:00.000Z") { let hour = 4 if let dateWithTime = Calendar.current.date(bySettingHour: hour, minute: 0, second: 0, of: date) { let resultString = df.string(from: dateWithTime) print(resultString) // "2015-06-11T04:00:00.000Z" } } 

字符串是日期的文本表示,通常包括显式或隐式时区。 NSDate表示UTC的日期。

如果要添加一小时,则将字符串转换为NSDate,添加一小时,将其转换为字符串。 转换将注意夏令时的例子,其中凌晨2:30后一小时可能是凌晨4:30。 或者凌晨2:30。