如何从一年中获取日期? 例如,如果我将日期视为“1”,则日期应为“1月1日”
我如何在iPhone中获得该功能?我在javascript中找到了答案,但我想知道如何在Objective中实现相同的功能?
答案 0 :(得分:2)
我想这段代码对你有用: 我创建了一个示例函数,其中textfield给出了添加天数的输入值。还有一个计算最后一天的按钮。这是按钮事件逻辑。
NSDateComponents *dateComponent = [[NSDateComponents alloc] init];
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"yyyy-mm-dd"];
NSDate *newDate = [formatter dateFromString:@"2012-01-01"];
// add days to current date
dateComponent.day = [dayTextField.text intValue];
// get a new date by adding components
newDate = [[NSCalendar currentCalendar] dateByAddingComponents: dateComponent toDate:newDate options:0];
[finalDate setText:[NSString stringWithFormat:@"%@", newDate]];
此处dayTextField.text是表示要计算多少天数的文本。 (例如125天)和finalDate是一个标签,显示最终生成日期(表示自2012年1月1日起125天后的日期)。
此代码的好处是,您可以随时更改开始日参数。例如,对于其他要求,我需要计算我在1999年5月31日和#34;然后我将在一行中轻松更改它,相同的代码将起作用。
享受编码:)
答案 1 :(得分:1)
NSCalendar *gregorian =
[[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
NSUInteger dayOfYear =
[gregorian ordinalityOfUnit:NSDayCalendarUnit
inUnit:NSYearCalendarUnit forDate:[NSDate date]];
[gregorian release];
return dayOfYear;
从帖子中取出: How do you calculate the day of the year for a specific date in Objective-C?