iOS编程上获取本地时间以及星期几时间

本文详细介绍了如何在iOS编程中获取当前的本地时间及对应的星期,为开发者提供了具体的实现方法。
摘要由CSDN通过智能技术生成


本文回复一位网友关于获取时间的问题:http://blog.csdn.net/duxinfeng2010/article/details/8653411#reply


- (void)viewDidLoad
    {
        
        [super viewDidLoad];
        
        NSInteger year,month,day,hour,min,sec,week;
        NSString *weekStr=nil;
        
        NSCalendar *calendar = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
        NSDate *now = [NSDate date];;
        NSDateComponents *comps = [[NSDateComponents alloc] init];
        NSInteger unitFlags = NSYearCalendarUnit | NSMonthCalendarUnit | NSDayCalendarUnit | NSWeekdayCalendarUnit | 
        NSHourCalendarUnit | NSMinuteCalendarUnit | NSSecondCalendarUnit;
        
        comps = [calendar components:unitFlags fromDate:now];
        year = [comps year];
        week = [comps weekday];    
        month = [comps month];
        day = [comps day];
        hour = [comps hour];
        min = [comps minute];
        sec = [comps second];
        
        if(week==1)
        {
            weekStr=@"星期天";
        }else if(week==2){
            weekStr=@"星期一";
            
        }else if(week==3){
            weekStr=@"星期二";
            
        }else if(week==4){
            weekStr=@"星期三";
            
        }else if(week==5){
            weekStr=@"星期四";
            
        }else if(week==6){
            weekStr=@"星期五";
            
        }else if(week==7){
            weekStr=@"星期六";
            
        }    
        else {
            NSLog(@"error!");
        }
        
        NSLog(@"现在是:%d年%d月%d日 %d时%d分%d秒  %@",year,month,day,hour,min,sec,weekStr);
        
        NSInteger Monday = day - week+1+1;
        for (int i=1; i<=7; i++) {
            
            NSLog(@"本周 星期%d :%d年%d月%d日 ",i,year,month,Monday);
            Monday=Monday+1;
        }
        
    }



注:最后打印本周日期算是取得特殊值,还要考虑每个月份天数不同情况,以及某一周跨月情况处理;


运行结果:




评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值