在 Swift 中将字符串格式化为 HH:mm
Format String to HH:mm in Swift
我的代码:
let dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "yyyy-MM-dd HH:mm:ss"
let date = dateFormatter.dateFromString("2015-09-01 00-32-40")
结果:2015-08-3117:32:40
但我想要这样的结果:17:32。我该如何解决?
如果您尝试获取 NSDate
而不是字符串表示,打印 NSDate
将始终显示完整的日期时间。要仅显示小时和分钟,您必须使用 "HH:mm" 日期格式创建字符串表示,例如:
// Your original code
let dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "yyyy-MM-dd HH:mm:ss"
let date = dateFormatter.dateFromString("2015-09-01 00-32-40")
// To convert the date into an HH:mm format
dateFormatter.dateFormat = "HH:mm"
let dateString = dateFormatter.stringFromDate(date!)
println(dateString)
不确定您为什么要获得“17:32”的结果,但这会产生“00:32”作为字符串原始“00-32”部分的结果。
我的代码:
let dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "yyyy-MM-dd HH:mm:ss"
let date = dateFormatter.dateFromString("2015-09-01 00-32-40")
结果:2015-08-3117:32:40
但我想要这样的结果:17:32。我该如何解决?
如果您尝试获取 NSDate
而不是字符串表示,打印 NSDate
将始终显示完整的日期时间。要仅显示小时和分钟,您必须使用 "HH:mm" 日期格式创建字符串表示,例如:
// Your original code
let dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "yyyy-MM-dd HH:mm:ss"
let date = dateFormatter.dateFromString("2015-09-01 00-32-40")
// To convert the date into an HH:mm format
dateFormatter.dateFormat = "HH:mm"
let dateString = dateFormatter.stringFromDate(date!)
println(dateString)
不确定您为什么要获得“17:32”的结果,但这会产生“00:32”作为字符串原始“00-32”部分的结果。