Desejo obter os componentes de dia, mês e ano NSDate
em forma inteira, ou seja, se a data for 1/2/1988, devo obter 1, 2 e 1988 separadamente como um inteiro. Como posso fazer isso no iOS? Eu encontrei uma pergunta semelhante, mas o método descriptionWithCalendarFormat
: dá um aviso e parece estar obsoleto agora.
95
NSDate
.Respostas:
Olha Você aqui,
Você pode usar NSDateComponents para isso, conforme descrito acima.
Visite esta página para obter detalhes.
Espero que ajude.
fonte
Sim, pelo uso de NSCalendar, porém, acho que isso fará seu trabalho funcionar.
fonte
Rápido
Por conveniência, você pode colocar isso em uma
NSDate
extensão e fazê-lo retornar uma tupla:Agora você tem que escrever apenas:
Se você quiser, por exemplo, obter apenas o ano, pode escrever:
fonte
(day: Int, month: Int, year: Int)
, dessa forma você pode usar o resultado usandodate.dayMonthYear.day
,date.dayMonthYear.month
,date.dayMonthYear.year
.Você pode usar NSDateComponents para conseguir isso,
fonte
Coloque-o em uma extensão e viva sua vida 🍸🏖
Swift 3.0 (é uma iteração de respostas anteriores, mas resolve para todos os seus projetos de aplicativos futuros)
fonte
Para aqueles que apenas copiam e colam diretamente da web, como eu, esta é uma pequena atualização para iOS 8
A diferença é
NSCalendarUnitYear|NSCalendarUnitMonth|NSCalendarUnitDay
NSMonthCalendarUnit | NSDayCalendarUnit | NSYearCalendarUnit | NSWeekdayCalendarUnit
que foram descontinuadosfonte
Você pode tentar isso ...
fonte
fonte
fonte