作者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/m.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