我需要计算两个时间戳型的时间差,并得出相应的以小时为单位的数据。
这里是我自己找到的解决方法,先记录下来。
先将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(小时)
本文介绍了一种使用Java计算两个时间戳之间的差值并转换为小时数的方法。通过将字符串类型的时间转换为日期类型,再进一步转换为长整型进行计算。
1287

被折叠的 条评论
为什么被折叠?



