问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

从数据库中取出了两个date型数据(年-月-日),怎么算出他们相差几天

发布网友 发布时间:2022-05-06 23:23

我来回答

3个回答

热心网友 时间:2023-10-05 10:25

从数据库取出来的date类型
比如:现在是2004-03-26 13:31:40

过去是:2004-01-02 11:30:24

我现在要获得两个日期差,差的形式为:XX天XX小时XX分XX秒

方法一:

DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

try

{

Date d1 = df.parse("2004-03-26 13:31:40");

Date d2 = df.parse("2004-01-02 11:30:24");

long diff = d1.getTime() - d2.getTime();

long days = diff / (1000 * 60 * 60 * 24);

}

catch (Exception e)

{

}

方法二:

SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

java.util.Date now = df.parse("2004-03-26 13:31:40");

java.util.Date date=df.parse("2004-01-02 11:30:24");

long l=now.getTime()-date.getTime();

long day=l/(24*60*60*1000);

long hour=(l/(60*60*1000)-day*24);

long min=((l/(60*1000))-day*24*60-hour*60);

long s=(l/1000-day*24*60*60-hour*60*60-min*60);

System.out.println(""+day+"天"+hour+"小时"+min+"分"+s+"秒");

方法三:

SimpleDateFormat dfs = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

java.util.Date begin=dfs.parse("2004-01-02 11:30:24");

java.util.Date end = dfs.parse("2004-03-26 13:31:40");

long between=(end.getTime()-begin.getTime())/1000;//除以1000是为了转换成秒

long day1=between/(24*3600);

long hour1=between%(24*3600)/3600;

long minute1=between%3600/60;

long second1=between%60/60;

System.out.println(""+day1+"天"+hour1+"小时"+minute1+"分"+second1+"秒");

====================================================

java 比较时间大小

String s1="2008-01-25 09:12:09";

String s2="2008-01-29 09:12:11";

java.text.DateFormat df=new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

java.util.Calendar c1=java.util.Calendar.getInstance();

java.util.Calendar c2=java.util.Calendar.getInstance();

try

{

c1.setTime(df.parse(s1));

c2.setTime(df.parse(s2));

}catch(java.text.ParseException e){

System.err.println("格式不正确");

}

int result=c1.compareTo(c2);

if(result==0)

System.out.println("c1相等c2");

else if(result<0)

System.out.println("c1小于c2");

else

热心网友 时间:2023-10-05 10:25

数据库的日期类型可以直接做差输出的

热心网友 时间:2023-10-05 10:26

很简单呀
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
低温还原粉化性检验方法 ...播放量破50亿,大胃王“浪胃仙”是如何在抖音崛起的? 网络直播间:新部落的建构及其亚文化特征 网络直播中吃播的文化输出 我用圆通快递从河南商丘发到洛阳几天能到 商丘圆通快递几点下班? 河南商丘到江苏南京圆通快递,大概要多久? 四大名著语录 “命中注定我爱你”真的好看么? 好看的偶像剧 命中注定我爱你 农村商业银行是不是农业银行 Excel如何计算两个DATE(带日期的时间)之间的时间差 如何计算2个Date类型时间之间差了多少天 怎么算两个date的时间差 我的老公非常花心,经常和别的女人聊天,我该不该和他离婚呢? 武汉眼睛的黄斑病变 八月收到货款金蝶做账,借:银行存款 贷:应收账款 本来应该是用美元*汇率算*民币入账,但是我直接_百度问一问 借银行存款贷应收账款 怎么做现金日记账 收到客户前欠款存入银行,是借银行存款,贷应收账款,还是贷应付账款 有一笔账,做的是借银行存款,贷应收账款,但却多做了一笔,要怎么冲正 收到其他公司往来款,借银行存款,贷应收账款,应收贷款的余额方向是贷方还是借方 navicat premium怎么连接oracle 在收到货款时我的处理是:借:银行存款 财务费用 贷:应收帐款 对吗 怏手老板号码? 重庆川外女生杨诗雅被邹鸿成砍78刀,凶手好像是*子弟,有知道邹被抓到了没,判死刑没?5分! 梅特勒托利多IND560(xk3129)称重控制器如何进行profibus通讯,主要是数据采集问题。 称重控制器 KL-D7201 校正方法 网易星座运势 本人欲求上海鼎力自动化控制设备有限公司XK3102称重显示控制器的说明书,请求帮助 日本yamato500称重控制器说明书类似的也行 求 发表在人民网滚动新闻能不能查到 计算时间差 课后网签到失败怎么办 excel表格如果设置显示项目? C#怎么通过日期时间获取时间差 请问大家下在EXCEL中如何进行计算日期 时间的差?有晓得的人就说下哈,非常谢谢大家8h 食品申请专利时是否要公开配方? 关于EXCEL表中时间差的计算 Excel怎样将四样项目放在同一表格内? 中药配方专利申请之后是否就要公开呢? 阅读下面两篇文言文,完成下面题目。(15分)(甲)从小丘西行百二十步,隔篁竹,闻水声,如鸣佩环,心乐 “”请大家帮我侄女 起个名字谢谢,是个女孩 要好听 有意义的,谢谢,是今年农历 5月12日, (甲)小石潭记 柳宗元从小丘西行百二十步,隔篁竹,闻水声,如鸣佩环,心乐之。伐竹取道,下见小潭,水 我想申请技术方式的保护,但是又不想公布技术配方,请问专利申请怎么弄呢? 请教申请专利是否要把药方都说出来,能否有所保留,谢谢。 药品申请专利时需要公开配方吗? 中药配方申请专利时,需要在专利局网站公示吗? 申请专利要把配方都写出来吗 拜托各位,我的眼镜框的鼻梁架断了,用502的话,太脆了,我诚恳地向诸位请教怎样把它粘上去,谢谢啦。 眼镜鼻梁支架断了 眼镜鼻梁架断了修复要花多少时间?当场修要多少时间?