Swift 3'te güncel tarih alın? [kapalı]


115

Swift 3'te label.text güncel tarihini nasıl ayarlayabilirim?

Sadece bugün ekrana yazdırmak istiyorum. Bunu nasıl yapacağımı bulamadım.

C # çok basittir:

var date = DateTime.Now

15.09.2016 yazmalıyım hızlı 3. teşekkürler



bu artık çalışmıyor mu?
— yucel

1
Swift 3 cevabı için en alta kaydırdın mı?
— koen

Denedim ama başaramadım
— yucel

1
Muhtemelen NSDateFormatterve sonra kullanmak istersiniz stringFromDate.
— koen

Yanıtlar:


289

Bir yorumda "15.09.2016" almak istediğinizi söylüyorsunuz.

Bunun için Dateve kullanın DateFormatter:

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

Biçimlendiriciye istediğiniz biçimi verin:

formatter.dateFormat = "dd.MM.yyyy"

Sonuç dizesini alın:

let result = formatter.string(from: date)

Etiketinizi ayarlayın:

label.text = result

Sonuç:

2016/09/15


2
Swift 4.2'de, DateFormatter hem .dateStyle hem de .timeStyle özelliklerine sahiptir. Yukarıdaki biraz opak sözdizimi yerine (bu daha ayrıntılı kontrol sağlar - bkz. Nsdateformatter.com ) yerel ayar ile birlikte dateStyle'ı kullanabilirsiniz.
— green_knight

63

Swift 3.0 ile bunu şu şekilde yapabilirsiniz:

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)

22
Swift 3'ten sonra bile tarih işlemenin çok kötü olduğuna inanamıyorum! .NET'te Date'in 2002'de bellekten 1. sürümde olması utanç verici. DateTime.Now veya DateTime.Now.Month çok daha kolay!
— csmith

1
O günün Pzt, Sal veya Çar olduğunu nasıl anlarsınız?
— Joseph Astrahan

1
Hızlı bir şekilde tarihlerle etkileşim kurmanın çok daha kolay bir yolunu istiyorsanız SwiftDate Cocoapod'a göz atın.
— Rob Norback

1
@csmith Bunun nedeni, hala eski NSDate ancak Swift sözdizimine sahip olmasıdır. Yeniden yazılmadı. Yine de haklısın, çalışmak biraz acı verici.
— bandejapaisa
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.