java 两个时间相减

SimpleDateFormatsdf=newSimpleDateFormat("yyyyMMddHHmmss");2个这种格式的时间戳,怎么判断时间相减得到天数?... SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");
2个这种格式的时间戳,怎么判断时间相减得到天数?
展开
 我来答
QQMSD8
推荐于2017-11-27 · 知道合伙人软件行家
QQMSD8
知道合伙人软件行家
采纳数:6788 获赞数:13240
没有做不到,只有想不到,帮助别人的同时也是对自己的提升

向TA提问 私信TA
展开全部

先转成Date 再获取毫秒数来减

java.text.SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
java.util.Calendar c = Calendar.getInstance();
String date1 = "2014-10-10 00:00:00";
String date2 = "2015-10-10 00:00:00";
c.setTime(sdf.parse(date1));
int y1 = c.get(Calendar.YEAR);
int m1 = c.get(Calendar.MONTH);


c.setTime(sdf.parse(date2));
int y2 = c.get(Calendar.YEAR);
int m2 = c.get(Calendar.MONTH);

int y = Math.abs(y2 - y1);
int m = y * 12 + Math.abs(m1-m2);

long d1 = sdf.parse(date1).getTime();
long d2 = sdf.parse(date2).getTime();
int d = (int) (Math.abs(d2-d1) / (1000 * 60 * 60 * 24));

System.out.println("相差年: " + y);
System.out.println("相差月: " + m);
System.out.println("相差天: " + d);
29cyy
2015-03-23 · TA获得超过2186个赞
知道小有建树答主
回答量:2826
采纳率:45%
帮助的人:626万
展开全部
  Date d1 = sdf.parse("201501231459");
  Date d2 = sdf.parse("201503231459");
  long times1 = d1.getTime();
  long times2 = d2.getTime();
  int days = (int)((times2-times1)/1000/60/60/24);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式