一个简单的计算获得的日期与现在的日期差

C语言做日期加法器计算两个日期之间相隔的天数 题目要求: 默认输入的第一个日期早于第二个日期,例如: 第一个日期:2008.7.4 第二个日期:2008.8.5 相隔天数是32(21,32,33可以自己定义) 思路: 1.输入输出:首先需要将取到的两个字符串以“.”分割,并分别取到六个整型常量 2.自定义函数做日期加法器,最后两日期之间相隔的天数就是执行此加法器的次数 3.计算相隔天数可以直接从较早的日期开始加,一直加到两个字符串完... 阅读详情
-(NSString *)getDate:(NSString *)str
{
    NSString *date = [[NSString alloc]init];
    int day = (int)[self getWeak:str];
    if (day>0) {
        if (day>7) {
            NSArray *arr = [str componentsSeparatedByString:@"-"];
            NSString *pMon = [arr objectAtIndex:1];
            NSString *pDay = [arr objectAtIndex:2];
            int mon = [pMon intValue]-1;
            NSArray *monArr = @[@"一月",@"二月",@"三月",@"四月",@"五月",@"六月",@"七月",@"八月",@"九月",@"十月",@"十一月",@"十二月"];
            date = [NSString stringWithFormat:@"%@\n%@",pDay,[monArr objectAtIndex:mon]];
        }
        else{
            NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
            dateFormatter.locale = [[NSLocale alloc] initWithLocaleIdentifier:@"zh-CN"];
            [dateFormatter setDateFormat: @"yyyy.MM.dd.EEEE"];
            NSDate *today = [NSDate date];
            NSString *st = [dateFormatter stringFromDate:today];
            NSArray *arr = [st componentsSeparatedByString:@"."];
            NSString *pWeek = [arr objectAtIndex:3];
            
            NSArray *arr1 = @[@"星期一",@"星期二",@"星期三",@"星期四",@"星期五",@"星期六",@"星期日"];
            NSArray *arr2 = @[@"周一",@"周二",@"周三",@"周四",@"周五",@"周六",@"周日"];
            NSArray *arr3 = @[@"下周一",@"下周二",@"下周三",@"下周四",@"下周五",@"下周六",@"下周日"];
            
            for (int i=0; i<[arr1 count]; i++) {
                int a = 0;
                if ([pWeek isEqualToString:[arr1 objectAtIndex:i]]) {
                    a = i;
                    int dd = a+day;
                    if (day==0) {
                        date = @"今天";
                    }else if (day==1){
                        date = @"明天";
                    }else if (dd < 7) {
                        date = [arr2 objectAtIndex:dd];
                    }else if (dd >= 7 && dd<14){
                        int w = dd%7;
                        date = [arr3 objectAtIndex:w];
                    }
                }
            }
        }
    }else{
        NSArray *arr = [str componentsSeparatedByString:@"-"];
        NSString *pMon = [arr objectAtIndex:1];
        NSString *pDay = [arr objectAtIndex:2];
        int mon = [pMon intValue]-1;
        NSArray *monArr = @[@"一月",@"二月",@"三月",@"四月",@"五月",@"六月",@"七月",@"八月",@"九月",@"十月",@"十一月",@"十二月"];
        date = [NSString stringWithFormat:@"%@\n%@",pDay,[monArr objectAtIndex:mon]];
    }
    return date;
}

-(NSInteger)getWeak:(NSString *)time
{
    NSDate *today = [NSDate date];
    NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
    [dateFormatter setDateFormat: @"yyyy-MM-dd"];
    NSString *st = [dateFormatter stringFromDate:today];
    
    NSDate *staDate = [dateFormatter dateFromString:st];
    
    NSDateFormatter *dateFor = [[NSDateFormatter alloc] init];
    [dateFor setDateFormat: @"yyyy-MM-dd"];
    NSDate *endDate =[dateFor dateFromString:time];
    
    NSCalendar *gregorian = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
    
    NSUInteger unitFlags = NSMonthCalendarUnit | NSDayCalendarUnit;
    
    NSDateComponents *components = [gregorian components:unitFlags fromDate:staDate toDate:endDate options:0];
    
    NSInteger days = [components day];
    return days;
}

写的可能有些负责和啰嗦

getDate 这个方法中,传入的日期格式为 yyyy-MM-dd

【Calendar Function】计算日期差      问题:求解year1-month1-day1 和 year2-month2-day2的日期差      思路:将两个date间的间隔天数计算转换为计算两个日期到同一基准日期的天数差      说明(如图所示):  求解dist1, _dist2(year-month-day是year那一年的第多少天)  求解sum(year1一整年的天数 + 中间所有年的天数(365or366)... 阅读详情

相关推荐

VBS脚本实现日期差计算完整示例

VBScript(Visual Basic Scripting Edition)是一种轻量级的脚本语言,广泛应用于Windows系统的自动化任务中。它继承了Visual Basic的语法风格,简洁易学,尤其适合系统管理员和开发人员快速实现小型自动化脚本。在众多应用场景中,日期处理是VBS的重要功能之一,尤其在需要计算两个日期之间的差异、生成定时任务、记录日志时间戳等场合中尤为常见。本章将引导读者了解VBS的基本语法结构,并聚焦其在日期处理中的核心作用,解释为何选择VBS进行日期差计算。

weixin_42389113的博客 1178

根据时间差计算日期

public DateTime Getime() { TimeSpan toget = new TimeSpan(0, 0, Convert.ToInt32(AverageUnitTime() * Convert.ToInt32(this.label16.Text, 16))); return Convert.ToDateTime(label12.Text) + toget; } ...

firewings_r的专栏 227

Delphi中计算两个日期差的实用教程

Delphi作为一款功能强大的开发工具,为开发者提供了丰富的日期和时间处理功能。在这一章节中,我们将简要介绍Delphi在处理日期和时间时所具备的基础知识。我们将从Delphi的历史说起,讨论其在时间处理方面的发展历程,以及这些特性如何帮助开发者以最高效的方式进行编程。随后,我们将深入探讨Delphi中时间处理的基本原则和常见模式,为后续章节中对TDate类型及日期差值计算等内容的学习打下坚实的基础。我们会通过引述示例代码以及简要的使用场景描述,让读者能够快速地理解并应用到实际的项目开发中去。

weixin_33582089的博客 1182

C语言计算两个日期之间的天数

计算两个年月日之间的天数,思路是分别算出日期的总天数然后相减。 typedef struct { int iYear; int iMonth; int iDay; }Date; //IsLeap函数判断一个年份是否为闰年,方法如下: bool IsLeap(int year) { return (year % 4 ==0 || year % 400 ==0) && (year %

youyongyoumou的专栏 1万+

【SPSS实战】手动实现Quade非参数协方差分析:从数据准备到结果解读

本文详细介绍了在SPSS中手动实现Quade非参数协方差分析的实战方法。当数据不满足正态分布等参数检验假设时,通过将协变量和因变量转换为秩,并利用秩回归残差进行Kruskal-Wallis组间比较,提供了一种清晰、可操作的近似解决方案。该方法有效解决了非正态数据的协变量调整问题,适用于实验研究和调查数据分析。

bean的博客 468

FAGLB03余额显示异常排查与修复指南

本文针对SAP新总账中FAGLB03报表余额显示异常问题,提供了专业的排查与修复指南。文章深入剖析了数据不一致的核心原因,如FAGLFLEXT汇总表与凭证明细不同步、年度余额结转(FAGLGVTR)失败等,并详细介绍了使用FAGLF03进行精准诊断、通过SE38执行标准调整程序TFC_ADJUST_VZ进行修复的标准操作流程,帮助用户快速恢复数据一致性,确保财务报表的准确性。

weixin_29313423的博客 307

Calendar JAVA中用来计算时间差, 两个时间差, 多个时间差.

1.java.util.Calendar    Calendar 类是一个抽象类,它为特定瞬间与一组诸如 YEAR、MONTH、DAY_OF_MONTH、HOUR 等 日历字段之间的转换提供了一些方法,并为操作日历字段(例如获得下星期的日期)提供了一些方法。瞬间可用毫秒值来表示,它是距历元(即格林威治标准时间 1970 年 1 月 1 日的 00:00:00.000,格里高利历)的偏移量。   

蓝松SDK 3万+

MobaXterm隧道配置详解:为PyCharm远程开发打通‘最后一公里’

本文详细解析了如何利用MobaXterm配置SSH隧道,实现PyCharm远程开发的高效连接。通过本地端口转发技术,开发者可以安全访问内网服务器,特别适用于需要通过跳板机的复杂网络环境。文章涵盖从基础配置到企业级运维的全套解决方案,包括性能优化、安全加固等实用技巧。

weixin_30566063的博客 504

C语言时间差计算函数clock() 与 time ()用法分析

在很多情况下,为了评判某个算法,函数的优劣,特别是比较同一个功能的两个函数的效率高低时,我们经常通过计算耗费时间作为判断标准。C语言中有两个相关的函数用来计算时间差,分别是: time_t time( time_t *t)   与 clock_t clock(void) 头文件: time.h 计算的时间单位分别为: s   , ms  time_t 和 clock_t 是函数库time.

linpengbin的专栏 4万+

SC-FDMA

<br />SC-FDMA(Single-carrier Frequency-Division Multiple Access,單載波分頻多工),是LTE的上行鏈路的主流多址。<br />SC-FDMA是單波載(Single-carrier),與OFDMA相比之下具有的較低的PAPR(峰值/平均功率比,peak-to-average power ratio),比多載波的PAPR低1-3dB左右(PAPR是由于多載波在频域叠加引起)。更低的PAPR可以使行動終端(mobile terminal)在發送功效方面

jod的专栏 3299

【YOLOv8科研级优化】基于YOLOv9的GELAN模块重构C2f结构,实现精度与效率的同步提升

打开确保模型解析器能识别GELANBlock模块。通过将YOLOv9的GELAN模块集成到YOLOv8的C2f模块中,我们实现了一个“强特征表达+高效计算”的目标检测模型。这个改进不仅在工程上能提升复杂场景下的检测效果,更在科研上提供了“多分支特征融合”的创新思路——这种思路可以延伸到其他检测网络(如Faster R-CNN、SSD)的改进中,帮你在论文中打造独特的研究点。

know_F0727的博客 203

Java计算时间差、日期差总结

Java计算时间差、日期差总结 最近工作中遇到需要计算时间差,搜索了几种计算时间差的方法,这里总结一下 1、java 7中的日历类Calendar Calendar类使用其静态的getInstance()方法获取一个日历实例,该实例为当前的时间;如果想改变时间,可以通过其setTime方法传入一个Date对象,即可获得Date对象所表示时间的Calendar对象 /** *使用Cal...

sy793314598的博客 19万+

【ArcGIS Pro微课1000例】0047:深度学习--棕榈树提取全流程

对汤加科洛瓦伊种植园每棵棕榈树的健康状况进行清查和评估,这需要花费大量的时间和劳动力。为简化此过程,将在 ArcGIS Pro 中使用深度学习模型来识别树木,然后根据植被绿度的测量值计算其健康状况。第一步是找到显示汤加科洛瓦伊的影像,该影像具有足够精细的空间和光谱分辨率来识别树木。获得此影像后,将创建训练样本并将其转换为可供深度学习模型使用的格式。为了让模型识别出它的查找任务,需要定义棕榈树的影像,以便识别相似的像素和树木大小。

智慧空间实验室 2207

利用SimpleDateFormat工具类计算日期差

本文就介绍了SimpleDateFormat的基础内容,理解和使用。以及遇到异常的时候简单的处理办法

Best_jiangX的博客 2034

【华为OD机试真题】3、 路灯照明问题 | 机试真题+思路参考+代码解析(C++、Java、Py、C语言、JS)

题目描述 >在一条笔直的公路上安装了N个路灯,从位置0开始安装,路灯之间间距固定为100米。 每个路灯都有自己的照明半径,请计算第一个路灯和最后一个路灯之间,无法照明的区间的长度和。

KJ.JK 1万+

学Simulink--基于新能源与储能系统的场景实例:压缩空气储能(CAES)系统热力学建模

本文介绍了使用Simulink对压缩空气储能(CAES)系统进行热力学建模的详细流程。重点讲解了系统各模块的设计方法,包括压缩机、储气装置、膨胀机和热交换器等核心组件的参数设置与计算模型。文章还提供了控制策略设计和仿真运行的具体步骤,通过建立MATLAB函数计算关键参数变化,并分析了系统性能评估指标。该建模方法可用于验证CAES系统的设计有效性,并为优化储能效率提供技术参考。全文采用模块化设计思路,为新能源与储能系统的仿真研究提供了实用案例。

xiaoheshang_123的博客 298

Impala计算日期差datediff

在数据库查询上,除了获取当前日期、进行日期加减外,常见的还有计算两个日期之后的日期差,为一些指标的计算提供时间基础;Impala中常用的日期差函数 datediff,就是用来计算两个日期之间的间隔;类似日期差的计算中,还有其他计算时间差的函数,如计算月份差(int_months_between)、浮点数月份差(months_between)、日期大小比较(date_cmp、timestamp_cmp)

王世洪的博客 8528

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

计算日期差(C/C++实现)

不使用API,也不使用 Excel 以及计算器,计算某一个日期到另一个日期经过了多少天。如果考虑两个日期之间的关系,会非常麻烦,而选取一个日期基点,计算两个日期到基点经过的天数,然后作差会使问题简便。 代码 #include #include bool isLeapYear(int year) { return ((year%4==0 && year%100!=0) ||

弱弱的小雨鸟 1万+

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

C# DateTime:日期、日期差、时间、时间差

c#中如何获取日期 今天 DateTime.Now.Date.ToShortDateString(); 昨天,就是今天的日期减一 DateTime.Now.AddDays(-1).ToShortDateString(); 明天,同理,加一 DateTime.Now.AddDays(1).ToShortDateString(); 本周(要知道本周的第一天就得先知道今天是星期几,从而得知本周的第一天就是几天前的那一天,要注意的是这里的每一周是从周日始至周六止 DateTime.Now.AddDays(Co

weixin_40948750的博客 7954

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

Java计算时间差、日期差

Java日期操作

Liang_KANA的博客 5823

Java日期差计算天数

package action; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; import com.sun.org.apache.xerces.internal.impl.xpath.regex.ParseException; public class Test { ...

MING.Z 629

WPS计算日期差

1、输入两个日期 2、点击编辑栏fx 3、类型选择日期与时间,选择函数DATEDIF,然后确定 4、选择开始结束日期,点击表格中的日期即可选择 5、然后选择比较单位:年-Y,月-M,日-D; 注:引号注意是英文输入 6、或者直接在表格内输入公式; 公式:=DATEDIF(起始日期,结束日期,“d”) ...

qq_39958629的博客 1万+

C++返回日期总天数,日期差天数计算

int 返回日期总天数(int 年, int 月, int 日) { int 总天数 = 0; if (月 == 12 && 日 == 31)总天数 = 返回年总天数(年); else { while (--月)总天数 += 返回月的天数(年, 月); 总天数 += 日 + 返回年总天数(--年); } return 总天数; } int 日期差天数计算...

浤济的专栏 715

计算日期差函数

自己写了一个计算日期差的函数,不过begin=end的情况没有考虑#includestruct date{    unsigned int year;    unsigned short month;    unsigned short day;};inline int isleap(unsigned int year){    return ((year%4==0&&year%100!=0)||

李永刚的专栏 1403

pandas计算excel两列的日期差

原始Excel数据 诉求:往Excel中追加两列"当前时间"、“时间差”,计算日期和当前时间相差的天数、小时、秒, 注:一天等于86400秒 插入两列数据到表格 # coding=utf-8 import pandas as pd import datetime df = pd.read_excel(r"C:\Users\Administrator\Desktop\测试数据.xls") # 读取数据 format = "%Y-%m-%d %H:%M:%S" # 设定日期格式 now = datet

小楼一夜听春雨 4652

集成计算器,日期差,绘制函数图像功能的Matlab App Designer 开发

目录 一、引言 1.实验背景 2.实验内容 二、实验过程 1.实验原理 2.Matlab代码 (1)Matlab关键代码解读 (2)完整代码 三、运行输出结果 一、引言 1.实验背景 本实验的构思启发来源于自身日常生活与学习。 (1)开发计算器功能的实验背景 本人平时极大依赖ipad来学习等,但少有人知道的是,ipad上缺乏很基础的计算器App,而本人在日常生活中会涉及记账,题目运算,时间规划等事项对计算器的需要,所以决定将开发计算器作为实验内容。 (...

qq_50296344的博客 2154
上一篇: 《漫评APP》创刊语
下一篇: 比较帖子发布时间和当前时间
simon699
博客等级 码龄18年 0粉丝 6原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值