日期与字符串操作Swift2最佳实践

时间:2016-05-11 19:44:26

标签: string swift swift2 nsdate nsdateformatter

API会在json文件中返回此值:

2016-05-11T00:00:00,2016-05-11T21:22:59

现在我需要以“,”格式提取日期时间,格式为hh:mm

因此,对于这个例子,我希望得到这个结果“21:22”。因为我后来需要这个值作为字符串,我想在这种情况下字符串方法更容易吗?

最好的方法是什么?我应该使用字符串操作还是用作NSDate对象?

对不起,我对swift很新,主要是在过去使用javascript。

非常感谢任何帮助。

BR

尼古拉

1 个答案:

答案 0 :(得分:2)

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($0)! }

// 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)
相关问题