时间差计算

//是不是过了指定的天数
- (BOOL) isAfterDays:(int) days {

    NSDate * sendDate = [NSDate date];
    NSDateFormatter * dateFormatter = [[NSDateFormatter alloc] init];
    [dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
    NSString * locationString = [dateFormatter stringFromDate:sendDate];

    NSString * lastShowTime = [[NSUserDefaults standardUserDefaults] objectForKey:@"lastShowTime"];
    if (lastShowTime == nil) {
        [[NSUserDefaults standardUserDefaults] setObject:locationString forKey:@"lastShowTime"];
    }
    else {
        NSString * string = [self intervalSinceNow:lastShowTime];
        int timeInterval = [string intValue];

        NSLog(@"Interval:%@",string);
        if (timeInterval >= days) {
            [self saveLastShowTime];
            return YES;
        }
    }

    return NO;
}

//存储本次提醒时间,以便下次计算下次提醒的时间
- (void) saveLastShowTime {
    NSDate * sendDate = [NSDate date];
    NSDateFormatter * dateFormatter = [[NSDateFormatter alloc] init];
    [dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
    NSString * locationString = [dateFormatter stringFromDate:sendDate];
    [[NSUserDefaults standardUserDefaults] setObject:locationString forKey:@"lastShowTime"];
}

#pragma mark 获取指定日期距离现在的时间段
- (NSString *)intervalSinceNow: (NSString *) theDate
{

    NSDateFormatter *date=[[NSDateFormatter alloc] init];
    [date setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
    NSDate *d=[date dateFromString:theDate];

    NSTimeInterval late=[d timeIntervalSince1970]*1;

    NSDate* dat = [NSDate dateWithTimeIntervalSinceNow:0];
    NSTimeInterval now=[dat timeIntervalSince1970]*1;
    NSString *timeString=@"";

    NSTimeInterval cha=now-late;

    //**********
    timeString = [NSString stringWithFormat:@"%f", cha/86400];
    timeString = [timeString substringToIndex:timeString.length-7];
    timeString=[NSString stringWithFormat:@"%@", timeString];
    //*********

    return timeString;
}
时间: 2024-10-10 21:10:32

时间差计算的相关文章

C/C++之时间差计算

1.clock函数 C/C++中的计时函数是clock(),而与其相关的数据类型是clock_t.在MSDN中,查得对clock函数定义如下: clock_t clock( void ); 这个函数返回从“开启这个程序进程”到“程序中调用clock()函数”时之间的CPU时钟计时单元(clock tick)数,在MSDN中称之为挂钟时间(wal-clock).其中clock_t是用来保存时间的数据类型,在time.h文件中,我们可以找到对它的定义: #ifndef _CLOCK_T_DEFINE

Oracle 时间差计算

两个Date类型字段:START_DATE,END_DATE,计算这两个日期的时间差(分别以天,小时,分钟,秒,毫秒): 天: ROUND(TO_NUMBER(END_DATE - START_DATE)) 小时: ROUND(TO_NUMBER(END_DATE - START_DATE) * 24) 分钟: ROUND(TO_NUMBER(END_DATE - START_DATE) * 24 * 60) 秒: ROUND(TO_NUMBER(END_DATE - START_DATE) *

Javascript时间差计算函数代码实例

<script language="javascript"> Date.prototype.dateDiff = function(interval,objDate){ //若參數不足或 objDate 不是日期物件則回傳 undefined if(arguments.length<2||objDate.constructor!=Date) return undefined; switch (interval) { //計算秒差 case "s":

jsp页面根据当前时间和定义时间差计算动态倒计时

http://www.jb51.net/article/74140.htm var maxtime =1000*60; //半个小时,按秒计算,自己调整!    second=maxtime/1000;    // 写一个方法,将秒数专为天数    var toDays = function(){     var s = second % 60; // 秒     var mi = (second - s) / 60 % 60; // 分钟    var h = ((second - s) /

python 时间差计算

例如:时间格式是 2020-01-29 16:31:31和2025-01-23 15:30:30,怎么求得两个时间相减的时间差? 具体如下: import time as t import datetime as d #定义时间差函数 def myDate(date1, date2):     date1 = t.strptime(date1, "%Y-%m-%d %H:%M:%S")     date2 = t.strptime(date2, "%Y-%m-%d %H:%M

Sql同一列中两条数据时间差计算

问题:从提出需求到需求通过,中间会经历不确定次数的“驳回->撤销驳回”的操作,所有的操作时间都位于同一列.求:需求从提出到通过经历的时间(不包含“驳回-撤销驳回”所消耗的时间) PS: “驳回->撤销驳回”操作成对出现:且按时间顺序排列. 1. 建表 IF OBJECT_ID('tempdb..#logs','U')is NOT NULL DROP TABLE #logs IF OBJECT_ID('tempdb..#logs2','U')is NOT NULL DROP TABLE #log

时间差计算(给定两时间,转换为时间差)

-(NSString *)getchaWithBegin:(NSString *)begin WithEnd:(NSString *)end { [email protected]"20150615184030"; end= @"20150615204130"; NSCalendar *cal = [NSCalendar currentCalendar]; NSInteger unitFlag = NSYearCalendarUnit | NSMonthCalend

oracle时间差计算

1.months_between(date1,date2);date1和date2相减得到相差的月份. select months_between(to_date('2015-05-11','yyyy-MM-dd'),to_date('2015-04-11','yyyy-MM-dd')) from dual :相差一个月. 2.ceil(date1-date2);date1-date2相减得到相差的天数 select ceil(To_date('2015-05-11 00:00:00' , 'y

PHP时间比较和时间差如何计算

1.<?php 2. $zero1=date("y-m-d h:i:s"); 3. $zero2="2010-11-29 21:07:00′; 4. echo "zero1的时间为:".$zero1."<br>"; 5. echo "zero2的时间为:".$zero2."<br>"; 6. if(strtotime($zero1)<strtotime($zer