¥0.1
swift3.0中如何获取当前时间的年月日星期几等?
1个回答
0
采纳
代码如下:
func getTimes() -> [Int] {
var timers: [Int] = [] // 返回的数组
let calendar: Calendar = Calendar(identifier: .gregorian)
var dataComps: DateComponents = DateComponents()
dataComps = calendar.dateComponents([.year,.month,.day, .weekday, .hour, .minute,.second,.weekOfYear], from: Date())
timers.append(dataComps.year! % 2000) // 年 ,后2位数
timers.append(dataComps.month!) // 月
timers.append(dataComps.day!) // 日
timers.append(dataComps.hour!) // 小时
timers.append(dataComps.minute!) // 分钟
timers.append(dataComps.second!) // 秒
timers.append(dataComps.weekday! - 1) //星期
timers.append(dataComps.weekOfYear!) //一年的第几周
return timers;
}
print(getTimes())
当前测试时间为 2016年12月15日,星期四。
上面代码输出结果为:[16, 12, 15, 20, 4, 6, 4,51]
其中数组里以此为:年,月,日,小时,分钟,秒,星期几,一年的第几周
备注:增加其他方法
比如我现在需要当前日期是本月的第几周,那么我们搜索 DateComponents对象dataComps,发现其有weekOfMonth
属性,则在calendar.dateComponents方法第一个参数里添加weekOfMonth。即:dataComps = calendar.dateComponents([.year,.month,.day, .weekday, .hour, .minute,.second,.weekOfYear,.weekOfMonth
], from: Date())
然后通过dataComps.weekOfMonth即可获取。
撰写回答