use*_*811 6 objective-c nsdate
我想从日期获得一年中的周数.我尝试了如下代码,但给了我一个错误的周数.
我的周代码:
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"YYYY-MM-dd"];
NSDate *date = [dateFormatter dateFromString:@"2012-09-15"];
NSCalendar *calendar = [NSCalendar currentCalendar];
NSLog(@"week: %i", [[calendar components: NSWeekOfYearCalendarUnit fromDate:date] weekOfYear]); //Display 38 instead of 37
}
Run Code Online (Sandbox Code Playgroud)
注意:如果我尝试使用[NSDate date]显示正确.
帮帮我解决这个问题..谢谢,
Mis*_*rko 18
的ObjectiveC:
NSCalendar *calendar = [NSCalendar currentCalendar];
NSDateComponents *dateComponent = [calendar components:(NSWeekOfYearCalendarUnit | NSDayCalendarUnit | NSMonthCalendarUnit | NSYearCalendarUnit) fromDate:[NSDate date]];
NSLog(@"%@",dateComponent);
Run Code Online (Sandbox Code Playgroud)
迅速:
NSCalendar *calendar = [NSCalendar currentCalendar];
NSDateComponents *dateComponent = [calendar components:(NSCalendarUnitWeekOfYear | NSCalendarUnitDay | NSCalendarUnitMonth | NSCalendarUnitYear) fromDate:date];
NSLog(@"%@",dateComponent);
Run Code Online (Sandbox Code Playgroud)
斯威夫特3:
let calendar = NSCalendar.currentCalendar()
let dateComponent = calendar.components([.WeekOfYear, .Day, .Month, .Year], fromDate: NSDate(timeIntervalSinceNow: 0))
print("weekOfYear \(dateComponent.weekOfYear)")
Run Code Online (Sandbox Code Playgroud)
Ale*_*gel 11
[NSCalendar currentCalendar]默认情况下会为您提供阳历.您可以使用
NSCalendar *calendar = [[NSCalendar alloc] initWithCalendarIdentifier:NSISO8601Calendar];
Run Code Online (Sandbox Code Playgroud)
获得符合ISO 08601标准的日历,其日期为第37周.
| 归档时间: |
|
| 查看次数: |
8259 次 |
| 最近记录: |