斯威夫特有只有约会(没时间)的课程吗?(或基础课程)
(顺便说一句,如果没有,但是有一个众所周知的/流行的开源库来实现这一点,如果您提到这一点的话)
发布于 2016-03-03 12:39:26
没有只有日期类是基金会框架的一部分。
这是一种快速获取仅表示日期的NSDate对象的方法:
let now = NSDate()
let dateFormatter = NSDateFormatter()
dateFormatter.timeStyle = NSDateFormatterStyle.NoStyle
dateFormatter.dateStyle = NSDateFormatterStyle.MediumStyle
print(dateFormatter.stringFromDate(now)) // Mar 3, 2016NSDate总是有时间的,因为日期是时间的一个点。如果您非常愿意,您可以创建一个没有时间组件的日期,但它通常默认为上午12点:
let dateString = "2016-03-03"
let dateFromStringFormatter = NSDateFormatter()
dateFromStringFormatter.dateFormat = "yyyy-MM-dd"
let dateFromString = dateFromStringFormatter.dateFromString(dateString)
// dateFromString shows "Mar 3, 2016, 12:00 AM"对于Swift 3.0+
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "yyyy-MM-dd"
// optional
let date = dateFormatter.date(from: "2016-03-03") // Mar 3, 2015 at 12:00 AM发布于 2018-08-01 16:44:30
Foundation中不存在只有日期的类,但是可以使用Calendar从Date对象中删除时间。在Swift 4中
func stripTime(from originalDate: Date) -> Date {
let components = Calendar.current.dateComponents([.year, .month, .day], from: originalDate)
let date = Calendar.current.date(from: components)
return date!
}或作为扩展:
extension Date {
func stripTime() -> Date {
let components = Calendar.current.dateComponents([.year, .month, .day], from: self)
let date = Calendar.current.date(from: components)
return date!
}
}发布于 2016-12-15 08:47:37
Swift 3.0
let date = Date()
let dateFormatter = DateFormatter()
dateFormatter.timeStyle = DateFormatter.Style.none
dateFormatter.dateStyle = DateFormatter.Style.short
dateFormatter.string(from: date) // 12/15/16https://stackoverflow.com/questions/35771506
复制相似问题