日期与字符串操作 Swift 2 最佳实践
Date vs String manipulation Swift2 Best Practise
一个 API returns 我在 json 文件中这个值:
2016-05-11T00:00:00,2016-05-11T21:22:59
现在我需要以这种格式提取“,”之后的日期时间hh:mm
所以对于这个例子,我想要这个结果“21:22”。因为我后来需要这个值作为字符串,所以我猜在这种情况下字符串方法更容易?
最好的方法是什么?我应该使用字符串操作还是用作 NSDate 对象?
抱歉,我对 swift 很陌生,过去 javascript 大部分时间都做过。
非常感谢任何帮助。
BR
尼古拉
let period = "2016-05-11T00:00:00,2016-05-11T21:22:59"
// split the string into date string
let dateStrings = period.componentsSeparatedByString(",")
// define date parser
let parser = NSDateFormatter()
parser.dateFormat = "yyyy-MM-dd'T'HH:mm:ss"
// parse dates
let dates = dateStrings.map { parser.dateFromString([=10=])! }
// generate a string from the second date using system settings
let formatter = NSDateFormatter()
formatter.dateStyle = .NoStyle
formatter.timeStyle = .ShortStyle
// or formatter.dateFormat = "HH:mm"
let timeString = formatter.stringFromDate(dates[1])
print(timeString)
一个 API returns 我在 json 文件中这个值:
2016-05-11T00:00:00,2016-05-11T21:22:59
现在我需要以这种格式提取“,”之后的日期时间hh:mm
所以对于这个例子,我想要这个结果“21:22”。因为我后来需要这个值作为字符串,所以我猜在这种情况下字符串方法更容易?
最好的方法是什么?我应该使用字符串操作还是用作 NSDate 对象?
抱歉,我对 swift 很陌生,过去 javascript 大部分时间都做过。
非常感谢任何帮助。
BR
尼古拉
let period = "2016-05-11T00:00:00,2016-05-11T21:22:59"
// split the string into date string
let dateStrings = period.componentsSeparatedByString(",")
// define date parser
let parser = NSDateFormatter()
parser.dateFormat = "yyyy-MM-dd'T'HH:mm:ss"
// parse dates
let dates = dateStrings.map { parser.dateFromString([=10=])! }
// generate a string from the second date using system settings
let formatter = NSDateFormatter()
formatter.dateStyle = .NoStyle
formatter.timeStyle = .ShortStyle
// or formatter.dateFormat = "HH:mm"
let timeString = formatter.stringFromDate(dates[1])
print(timeString)