作者somniloquist (somniloquist)
看板java
标题[问题] Java月份日期
时间Mon Jun 15 02:10:08 2015
String from = request.getParameter("send_from");
String to = request.getParameter("send_to");
SimpleDateFormat sdf = new SimpleDateFormat("yyyy/mm/dd");
Calendar calFrom = Calendar.getInstance();
calFrom.setTime(sdf.parse(from));
Calendar calTo = Calendar.getInstance();
calTo.setTime(sdf.parse(to));
long df = calTo.getTimeInMillis() - calFrom.getTimeInMillis();
long day = df / (3600*24*1000);
如果表单填入是同一月份内的日期 计算会正常
但是我用6/30-7/01这种跨月份时间差就会变成负的
而且用get(Calendar.MONTH)显示永远是0(Jan)
该怎麽解决...
谢谢><
--
四六时中も好きと言って
梦の中へ连れて行って
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 114.44.124.228
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/java/M.1434305420.A.C29.html
1F:→ swpoker: 我都先算年,再算第N天 on年,得出天数 06/15 09:35
2F:→ swpoker: df / (3600*24*1000)->这个会有满多问题,不太准 06/15 09:36
3F:推 LaPass: 映像中这类时间的物件都会自带计算时间的方法,用那个 06/15 10:33
4F:推 haha02: 你的pattern写错了啊... 小写m是Minute in hour 06/15 11:40
5F:→ haha02: 另外你要算时间差的话可以用joda time 方便很多 06/15 11:41
6F:→ somniloquist: 我用joda time写好了!!! 感谢各位!m(_ _)m 06/15 14:39