有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java在使用日期时,如何将当前时间设置为09:04:15而不是9:4:15?

我正在尝试获取当前时间,例如09:04:15。到目前为止,我一直在使用

    long unixTime = System.currentTimeMillis() / 1000L;
    Date time=new java.util.Date((long)unixTime*1000);
    Calendar cal = Calendar.getInstance();
    cal.setTime(time);
    int hours = cal.get(Calendar.HOUR_OF_DAY);
    int minutes = cal.get(Calendar.MINUTE);
    int seconds = cal.get(Calendar.SECOND);


    currentTime = (hours+":"+minutes+":"+seconds);

结果是9:4:15。解决这个问题的最好办法是什么

谢谢


共 (6) 个答案

  1. # 1 楼答案

    您可以使用SimpleDateFormat,例如:

    SimpleDateFormat dateFormat = new SimpleDateFormat("hh:mm:ss");
    Calendar calendar = Calendar.getInstance();
    System.out.println(dateFormat.format(calendar.getTime()));
    
  2. # 2 楼答案

    Calendar c = Calendar.getInstance();
        System.out.println("Current time => "+c.getTime());
    
        SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        String formattedDate = df.format(c.getTime());
    
  3. # 3 楼答案

    保持简单: 无需日历,无需除以1000再乘以,只需执行以下操作:

    Date time = new java.util.Date(System.currentTimeMillis());
    System.out.println(new SimpleDateFormat("HH:mm:ss").format(time));
    

    将打印

    13:04:19

    添加前导零

  4. # 4 楼答案

    使用下一个代码:

    currentTime = new SimpleDateFormat("HH:mm:ss").format(cal.getTime());
    
  5. # 5 楼答案

    爪哇。时间

    LocalTime.now()
             .toString()
    

    09:04:15

    java的大部分内容。Java 8中内置的时间功能&;9及更高版本被向后移植到Java6&;ThreeTen BackPort项目中的7,并在ThreeTenABP项目中进一步适应Android

  6. # 6 楼答案

    使用SimpleDataFormat方法

    String date = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(Calendar.getInstance().getTime());