获取当前时间(方便计算年龄等..)

呀嘞呀嘞 好久不写 之前准备毕业 之后又忙着APP改版 所以就...

first step: 获取当前的时间 格式为:NSDate
NSDate *date = [NSDate date];

不要告诉我你不会这句..

second step:转换成字符串:这时候就需要设置需要转换的格式了
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
formatter.dateFormat = @"YYYY MM dd"; // 这个时间展示格式你随意
NSString *str = [formatter stringFromDate:date]; // date转字符串
NSDate *date = [formatter dateFromString:str]; // 字符串转date

啊 对了这是时分秒:hh:mm:ss 不用谢~
这时候要是想要计算年龄 ,如下:

- (NSInteger)agesWithBirthday:(NSDate *)birthdayDate {
    if (birthdayDate) {
        NSDate *currentDate = [NSDate date];
        NSDateComponents *components = [[NSCalendar currentCalendar] components:(NSCalendarUnitYear | NSCalendarUnitMonth | NSCalendarUnitDay | NSCalendarUnitWeekOfYear |  NSCalendarUnitHour | NSCalendarUnitMinute | NSCalendarUnitSecond | NSCalendarUnitWeekday | NSCalendarUnitWeekdayOrdinal) fromDate:currentDate];

        NSDateComponents *birthComponents = [[NSCalendar currentCalendar] components:(NSCalendarUnitYear | NSCalendarUnitMonth | NSCalendarUnitDay | NSCalendarUnitWeekOfYear |  NSCalendarUnitHour | NSCalendarUnitMinute | NSCalendarUnitSecond | NSCalendarUnitWeekday | NSCalendarUnitWeekdayOrdinal) fromDate:birthdayDate];

        NSInteger ages = components.year - birthComponents.year;
        if (components.month < birthComponents.month) {
            ages --;
        }
        if (components.month == birthComponents.month) {
            if (components.day < birthComponents.day) {
                ages --;
            }
        }
        NSLog(@"年龄是:%ld", ages);
        return ages;
    }
    return -1;
}

调用:

NSArray *array = @[@"19980101", @"19980111", @"19980903", @"19981003", @"19700901", @"19701001", @"19700903", @"19700801"];
    NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
    formatter.dateFormat = @"YYYYMMdd";
    for (int i = 0; i < array.count; i++) {
        NSString *SFZstr = array[i];
        NSDate *date = [formatter dateFromString:SFZstr];
        [self agesWithBirthday:date];
    }

好啦 就是这样 有问题 请指正 谢谢~

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 在iOS开发中,经常会遇到各种各样的时间问题,8小时时差,时间戳,求时间间隔,农历等等。解决办法网上比比皆是,但大...
    真巧了_嘿阅读 7,801评论 0 7
  • iOS开发中,经常会遇到各种各样的时间问题,8小时时差,时间戳,求时间间隔,农历等等。解决办法网上比比皆是,但大多...
    小李龍彪阅读 11,618评论 1 6
  • ``` 时间和日历的计算在iOS开发中经常看到,经常看到大家在百度,开源中国等搜索这些答案。今天写个简单的时间和日...
    昊楷阅读 5,625评论 1 4
  • 她已经离我而去很久了,久到我都不记得她的模样,唯独深深记得她对我的好,和我对她的坏,还有我内心深处永远存在的负罪。...
    草中藏珠阅读 3,161评论 0 0

友情链接更多精彩内容