package com.nos.lctp.basePlanet.commons.utils;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;
public class Pztest {
//public static void main(String[] args) {
//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 = "2014-10-10 10:00:00";
//
// try {
//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);
//} catch (ParseException e) {
//// TODO Auto-generated catch block
//e.printStackTrace();
//}
//public static void main(String ss[]) {
// SimpleDateFormat d = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");// 格式化时间
//
// String nowtime = d.format(new Date());// 按以上格式 将当前时间转换成字符串
//
// System.out.println("当前时间:" + nowtime);
// String testtime = "2016-04-18 11:07:35";// 测试时间
// System.out.println("测试时间:" + testtime);
//
// try {
// long result = (d.parse(nowtime).getTime() - d.parse(testtime)
// .getTime()) / 3600000;// 当前时间减去测试时间
// // 这个的除以1000得到秒,相应的60000得到分,3600000得到小时
// long resultMin = (d.parse(nowtime).getTime() - d.parse(testtime)
// .getTime()) / 60000;
// System.out.println("当前时间减去测试时间=" + result + "小时");
// System.out.println("当前时间减去测试时间=" + resultMin + "分钟");
// } catch (ParseException e) {
// e.printStackTrace();
// }
//
//}
public static void main(String ss[]) {
//现在是 :2004-03-26 13:31:c40
//过去是: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);
long hours = (diff-days*(1000 * 60 * 60 * 24))/(1000* 60 * 60);
long minutes = (diff-days*(1000 * 60 * 60 * 24)-hours*(1000* 60 * 60))/(1000* 60);
System.out.println(""+days+"天"+hours+"小时"+minutes+"分");
}catch (Exception e){
e.printStackTrace();
}
}
}