Q:使用如下日期间隔函数diffHour 计算10:20-10:35 获得的值是0,怎么可以获得0.25?我尝试了将格式定义成##.##,还是不行。
代码如下:
- var diff ="";
- var starttime = getItemValueAsDate("start_time");
- var endtime = getItemValueAsDate("end_time");
- if (starttime != null && endtime !=null){
- starttime = format (starttime,"yyyy-MM-dd HH:mm:ss");
- endtime= format (endtime,"yyyy-MM-dd HH:mm:ss");
- var diff = diffHours(starttime,endtime);//用diffHours则计算小时
- }
- //$PRINTER.println(diff);
- diff;
- A:diffHour方法是获取相差的小时,由于当前都是10点,所以得出来的结果自然就是0了,要实现您说的这种效果可以参考如下代码:
- var startime=getItemValueAsDate("开始时间");
- var endtime=getItemValueAsDate("结束时间");
- var count;
- var HourCount;
- if(startime!=null&&endtime!=null)
- {
- var util = new Packages.cn.myapps.util.DateUtil();
- count=util.getDiffDateTime(startime,endtime);//两个日期时间的差值,包括年月日 时间差值,单位为毫秒(ms)
- HourCount = (Math.round((count / ( 60 *60* 1000)) * 100))/100; //然后再把毫秒转换为小时数
- }
- println(HourCount+"sssssssssssssss");
- HourCount;
复制代码 |