我需要计算两个时间戳型的时间差,并得出相应的以小时为单位的数据。
这里是我自己找到的解决方法,先记录下来。
先将string 型转换为date型,然后转换为long型,最后以long型计算出小时数。
下面是解决方法
import java.text. * ;
import java.util. * ;
public class TestDate ... {
public static void main(String[] args) ...{
String t1 = "2008-03-10 16:25:02";
String t2 = "2008-03-10 18:26:02";
Date d1 = null;
Date d2 = null;
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
try ...{
d1 = sdf.parse(t1);
d2 = sdf.parse(t2);
} catch (ParseException pe) ...{
System.out.println(pe.getMessage());
}
long dd1 = d1.getTime();
long dd2 = d2.getTime();
double hours = (double)(dd2-dd1)/3600/1000;
System.out.println("时间差是:"+hours+"(小时)");
}
}
这段代码执行的结果是:
时间差是:2.0166666666666666(小时)