代码如下:
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh:mm");

String str1 = sdf.format(new Date(1325732784000L));
String str2 = sdf.format(new Date(1325775960000L));

System.out.println("时间1:" + str1);
System.out.println("时间2:" + str2);最后输出的时候。str1和str2竟然是一样的,这是怎么回事?Date精度问题吗?但是两个时间相差有好几个小时啊,Date的精度不至于那么差吧。我换成Calendar也不行,有什么办法解决吗?

解决方案 »

  1.   

    一个11点一个23点……SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    String str1 = sdf.format(new Date(1325732784000L));
    String str2 = sdf.format(new Date(1325775960000L));
    System.out.println("时间1:" + str1);
    System.out.println("时间2:" + str2);
      

  2.   

    HH换成H24,试试。
    好像是,你可以查查,有显示24小时的对应的格式化字段。
      

  3.   

    确实很有迷惑性,楼主逗大家呢SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd a hh:mm"); String str1 = sdf.format(new Date(1325732784000L));
    String str2 = sdf.format(new Date(1325775960000L)); System.out.println("时间1:" + str1);
    System.out.println("时间2:" + str2);
      

  4.   

    H  一天中的小时数(0-23)  Number  0  
    h  am/pm 中的小时数(1-12)  Number  12  
      

  5.   


            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
            
            String str1 = sdf.format(new Date(1325732784000L));
            String str2 = sdf.format(new Date(1325775960000L));        System.out.println("时间1:" + str1);
            System.out.println("时间2:" + str2);
    结果:
    时间1:2012-01-05 11:06:24
    时间2:2012-01-05 23:06:00
      

  6.   


            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
            
            String str1 = sdf.format(new Date(1325732784000L));
            String str2 = sdf.format(new Date(1325775960000L));        System.out.println("时间1:" + str1);
            System.out.println("时间2:" + str2);注意:("yyyy-MM-dd HH:mm:ss");结果:
    时间1:2012-01-05 11:06:24
    时间2:2012-01-05 23:06:00