[問題] Java月份日期

作者: somniloquist (drifter)   2015-06-15 02:10:08
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)
該怎麼解決...
謝謝><
作者: swpoker (swpoker)   2015-06-15 09:35:00
我都先算年,再算第N天 on年,得出天數df / (3600*24*1000)->這個會有滿多問題,不太準
作者: LaPass (LaPass)   2015-06-15 10:33:00
映像中這類時間的物件都會自帶計算時間的方法,用那個
作者: haha02 (來人!上夾棍!)   2015-06-15 11:40:00
你的pattern寫錯了啊... 小寫m是Minute in hour另外你要算時間差的話可以用joda time 方便很多
作者: somniloquist (drifter)   2015-06-15 14:39:00
我用joda time寫好了!!! 感謝各位!m(_ _)m

Links booklink

Contact Us: admin [ a t ] ucptt.com