Quiero obtener los componentes de día, mes y año NSDate
en forma de número entero, es decir, si la fecha es 1/2/1988, entonces debería obtener 1, 2 y 1988 por separado como un número entero. ¿Cómo puedo hacer esto en iOS? Encontré una pregunta similar, pero el método descriptionWithCalendarFormat
: da una advertencia y parece estar obsoleto a estas alturas.
95
NSDate
.Respuestas:
Aquí estás,
Puede usar NSDateComponents para eso como se indicó anteriormente.
Visite esta página para obtener más detalles.
Espero eso ayude.
fuente
Sí, mediante el uso de NSCalendar, creo que esto hará que funcione.
fuente
Rápido
Para mayor comodidad, puede poner esto en una
NSDate
extensión y hacer que devuelva una tupla:Ahora solo tienes que escribir:
Si desea, por ejemplo, obtener solo el año, puede escribir:
fuente
(day: Int, month: Int, year: Int)
, de esa manera se puede utilizar el resultado mediante el uso dedate.dayMonthYear.day
,date.dayMonthYear.month
,date.dayMonthYear.year
.Puede usar NSDateComponents para obtener esto,
fuente
Ponlo en una extensión y vive tu vida 🍸🏖
Swift 3.0 (es una iteración de respuestas anteriores, pero lo resuelve para todos sus proyectos de aplicaciones futuros)
fuente
Para aquellos que simplemente copian y pegan directamente desde la web, como yo, esta es una pequeña actualización para iOS 8
La diferencia
NSCalendarUnitYear|NSCalendarUnitMonth|NSCalendarUnitDay
NSMonthCalendarUnit | NSDayCalendarUnit | NSYearCalendarUnit | NSWeekdayCalendarUnit
ha quedado obsoletafuente
Puedes probar esto .......
fuente
fuente
fuente