• 时间戳 时间 相互转换


    一、时间戳 -> 时间

     NSDate *date = [NSDate dateWithTimeIntervalSince1970:myOrder.orderTimeStart];

            NSDateFormatter *formatter = [[NSDateFormatter alloc] init];

            [formatter setDateFormat:@"MM月dd日 hh:mm"]; //hh:12小时制, HH:24小时制 EEE:周几或者Sun形式 EEEE:星期几或Sunday形式 (模拟器显示英文,真机显示中文, 可能是根据系统语言而定);

            NSString *string = [formatter stringFromDate:date];

    二、当前时间 ->时间戳

    NSDate *date = [NSDate date];   //返回0时区,当前时间

    NSLog(@"%.0f", [date timeIntervalSince1970] * 1000);

    或者

     NSDate *date = [NSDate dateWithTimeIntervalSinceNow:0]; //0时区当前时间

        NSTimeInterval tim = [date timeIntervalSince1970];

        NSString *time = [NSString stringWithFormat:@"%.0f", tim * 1000];

    三、日期 ->时间戳

    NSDateComponents *comp = [[NSDateComponents alloc] init];

        [comp setYear:2016];

        [comp setMonth:7];

        [comp setDay:13];

        NSDate *da = [[NSCalendar currentCalendar] dateFromComponents:comp];

        NSTimeInterval time = [da timeIntervalSince1970] * 1000;

     

    四、设置某个时间点, 及获取该时间点之后一段时间的时间点        

    NSCalendar *greCalendar = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];

    // 定义一个NSDateComponents对象,设置一个时间点

    NSDateComponents *dateComponentsForDate = [[NSDateComponents alloc] init];

    [dateComponentsForDate setDay:6];

    [dateComponentsForDate setMonth:5];

    [dateComponentsForDate setYear:2004];

    // 根据设置的dateComponentsForDate获取历法中与之对应的时间点

    // 这里的时分秒会使用NSDateComponents中规定的默认数值,一般为0或1。

    NSDate *dateFromDateComponentsForDate = [greCalendar dateFromComponents:dc];

    // 定义一个NSDateComponents对象,设置一个时间段

    NSDateComponents *dateComponentsAsTimeQantum = [[NSDateComponents alloc] init];

    [dateComponentsForDate setDay:6];

    // 在当前历法下,获取6天后的时间点

    NSDate *dateFromDateComponentsAsTimeQantum = [greCalendar dateByAddingComponents:dateComponentsAsTimeQantum toDate:[NSDate date] options:0];

     

    五、获取时间差

    // 先定义一个遵循某个历法的日历对象

    NSCalendar *greCalendar = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];

    // 根据两个时间点,定义NSDateComponents对象,从而获取这两个时间点的时差

    NSDateComponents *dateComponents = [greCalendar components:NSYearCalendarUnit fromDate:[NSDate dateWithTimeIntervalSince1970:0] toDate:[NSDate date] options:0];

    NSLog(@"number of years:%i", dateComponents.year);

     

  • 相关阅读:
    AFN的使用(待整理)
    [转]文件上传进度显示
    图片上传在线预览
    Mysql中文乱码,修改字符集
    struts2 实现自定义标签
    设置HTML和JSP页面不缓存的方法
    Spring framework3.2整合hibernate4.1报错:No Session found for current thread
    Java用SAX解析XML
    js操作Cookie
    php创建缩略图
  • 原文地址:https://www.cnblogs.com/lion-witcher/p/5667878.html
Copyright © 2020-2023  润新知