请问如何计算两个时间之间的间隔长度? 本人是初学者,想请教一下有关java中处理时间的方法比如两个时间分别是12点24分33秒14点05分45秒如何计算这两个时间点之间隔了多少分钟呢?谢谢各位大虾指点 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 用Calendar类,一看API文档便知道该怎么做了。 long TIME = 1000L * 60;Calendar c1 = new GregorianCalendar(2007, 06, 13, 12, 24, 33);Calendar c2 = new GregorianCalendar(2007, 06, 13, 14, 05, 45);System.out.printf("%1$tF %<tT%n", c1);System.out.printf("%1$tF %<tT%n", c2);long n1 = (c1.getTimeInMillis() / TIME)* TIME; // 将秒重置为0long n2 = (c2.getTimeInMillis() / TIME)* TIME;System.out.println((n2 - n1) / TIME); 呵呵,改一下:long TIME = 1000L * 60;Calendar c1 = new GregorianCalendar(2007, 06, 13, 12, 24, 33);Calendar c2 = new GregorianCalendar(2007, 06, 13, 14, 05, 45);System.out.printf("%1$tF %<tT%n", c1);System.out.printf("%1$tF %<tT%n", c2);long n1 = c1.getTimeInMillis() / TIME;long n2 = c2.getTimeInMillis() / TIME;System.out.println( n2 - n1 ); 在别的地方找到答案了,还是要谢谢一下上面回答我问题的朋友下面把我找到的方法贴出来,如果哪位高手有更好的方法也可以贴过来大家共享一下long quot = 0; SimpleDateFormat ft = new SimpleDateFormat("yyyy/MM/dd hh:mm:ss"); try { Date date1 = ft.parse( "2007/7/13 15:56:34" ); Date date2 = ft.parse( "2007/7/13 15:58:45" ); quot = date2.getTime() - date1.getTime(); quot = quot / 1000 / 60 ; } catch (ParseException e) { e.printStackTrace(); } System.out.println("时间差"+quot+"分");上面有提到Calendar类的朋友能稍微讲详细一点吗,我看了下他的帮助文档,但没找到相关资料,也可能是我找漏了,内容好多 谢谢bao110908(bao)(bao)(讨厌蟑螂) 同学的回答,可是下面这两句我看不明白System.out.printf("%1$tF %<tT%n", c1);System.out.printf("%1$tF %<tT%n", c2); 第一次来这个论坛,我应该怎样把分给bao110908(bao)(bao)(讨厌蟑螂)同学啊? hdu 1065 我用C过了,但java过不了。。 求教java 关于多个文件分段读写操作!!! 多线程操作同一实例某个属性的值的问题 这个方法有什么功能 求教更好的算法 请DX看看菜题.关于数组的传输 如何把"\\"换成"\" 关于JDK1.5的安装? 要通过键盘移动一幅图片,该怎么处理?将图片装入标签中,通过键盘消息重画图片可行吗? 求JAVA 读文件进数据库,然后从数据库读出来还原成文件,任何类型是不是都能实现? 奇怪的问题:Exception is not compatible with throws clause !会者很easy! JAVA导出的问题
Calendar c1 = new GregorianCalendar(2007, 06, 13, 12, 24, 33);
Calendar c2 = new GregorianCalendar(2007, 06, 13, 14, 05, 45);
System.out.printf("%1$tF %<tT%n", c1);
System.out.printf("%1$tF %<tT%n", c2);
long n1 = (c1.getTimeInMillis() / TIME)* TIME; // 将秒重置为0
long n2 = (c2.getTimeInMillis() / TIME)* TIME;
System.out.println((n2 - n1) / TIME);
Calendar c1 = new GregorianCalendar(2007, 06, 13, 12, 24, 33);
Calendar c2 = new GregorianCalendar(2007, 06, 13, 14, 05, 45);
System.out.printf("%1$tF %<tT%n", c1);
System.out.printf("%1$tF %<tT%n", c2);
long n1 = c1.getTimeInMillis() / TIME;
long n2 = c2.getTimeInMillis() / TIME;
System.out.println( n2 - n1 );
下面把我找到的方法贴出来,如果哪位高手有更好的方法也可以贴过来大家共享一下long quot = 0;
SimpleDateFormat ft = new SimpleDateFormat("yyyy/MM/dd hh:mm:ss");
try {
Date date1 = ft.parse( "2007/7/13 15:56:34" );
Date date2 = ft.parse( "2007/7/13 15:58:45" );
quot = date2.getTime() - date1.getTime();
quot = quot / 1000 / 60 ;
} catch (ParseException e) {
e.printStackTrace();
}
System.out.println("时间差"+quot+"分");上面有提到Calendar类的朋友能稍微讲详细一点吗,我看了下他的帮助文档,但没找到相关资料,也可能是我找漏了,内容好多
System.out.printf("%1$tF %<tT%n", c2);