2016-09-15 66 views
61

如何在Swift 3中设置label.text当前日期?在Swift 3中获取当前日期?

我想今天打印到屏幕上。我没有找到如何做到这一点。

在C#中是非常简单的:

var date = DateTime.Now 

我需要编写2016年9月15日迅速3. 感谢

+2

http://stackoverflow.com/questions/24070450/how-to-get-the-current-time-and-的可能的复制hour-as-datetime – Koen

+0

那不工作? – yucel

+1

你是否一直滚动到Swift 3答案的底部? – Koen

回答

148

你在评论中说你想得到“15.09.2016”。

对于这一点,使用DateDateFormatter

let date = Date() 
let formatter = DateFormatter() 

给你想要的格式格式:

formatter.dateFormat = "dd.MM.yyyy" 

得到的结果字符串:

let result = formatter.string(from: date) 

设置标签:

label.text = result 

结果:

2016年9月15日

+1

非常感谢你 – yucel

+1

谢谢!它运作良好。 – Raja

33

你可以用雨燕3.0做了这种方式:

let date = Date() 
let calendar = Calendar.current 
let components = calendar.dateComponents([.year, .month, .day], from: date) 

let year = components.year 
let month = components.month 
let day = components.day 

print(year) 
print(month) 
print(day) 
+0

非常感谢你 – yucel

+9

即使在Swift 3之后,我也不敢相信日期处理太糟糕!考虑到.NET中的Date是2002年版本1中的内存,这很丢人。 DateTime.Now或DateTime.Now.Month非常容易! – csmith

+1

你怎么知道那天是星期一,星期二还是星期三? –