Pregunta

¿Cómo puedo obtener el número actual de días del mes en curso utilizando NSDate o algo similar en contacto cacao?

¿Fue útil?

Solución

Puede utilizar las clases NSDate y NSCalendar:

NSDate *today = [NSDate date]; //Get a date object for today's date
NSCalendar *c = [NSCalendar currentCalendar];
NSRange days = [c rangeOfUnit:NSDayCalendarUnit 
                       inUnit:NSMonthCalendarUnit 
                      forDate:today];

today es un objeto NSDate representa la fecha actual; esto puede ser usado para calcular el número de días del mes en curso. se crea una instancia entonces Un objeto NSCalendar, que se puede utilizar, conjuntamente con el NSDate para la fecha actual, para devolver el número de días en el mes actual usando la función rangeOfUnit:inUnit:forDate:.

days.length contendrá el número de días del mes en curso.

Aquí están los enlaces a la documentación para NSDate y NSCalendar si quieres más información.

Otros consejos

sintaxis Swift:

let date = NSDate()
let cal = NSCalendar(calendarIdentifier:NSCalendarIdentifierGregorian)!
let days = cal.rangeOfUnit(.CalendarUnitDay, inUnit: .CalendarUnitMonth, forDate: date)

-[NSCalendar rangeOfUnit:inUnit:forDate:]

Swift 3 sintaxis ha cambiado un poco de la respuesta de Erez:

let cal = Calendar(identifier: .gregorian)
let monthRange = cal.range(of: .day, in: .month, for: Date())!
let daysInMonth = monthRange.count
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top