当前日期和; Java时间

时间:2012-07-09 12:50:41

标签: java datetime

我希望以下列格式显示当前日期和时间:

日期:YYYYMMDD

时间:HHMMSS

我尝试了以下

DateFormat dateFormat = new SimpleDateFormat("yyyyMMdd");
   //get current date time with Date()
   Date date = new Date();
   System.out.println(dateFormat.format(date));

   //get current date time with Calendar()
   Calendar cal = Calendar.getInstance();
   System.out.println(new Date().getTime());

通过这个我得到了所需的日期输出,但时间以这种方式到来1341837848290。

预计是HHMMSS。

5 个答案:

答案 0 :(得分:8)

使用format()

System.out.println(new SimpleDateFormat("HH:mm:SS").format(new Date()));

日期实例没有任何属性来保存自定义格式,因此您需要使用自定义格式HH:mm:SS将日期实例格式化为String(有关详细信息,请参阅API doc

参见

答案 1 :(得分:2)

try this 

DateFormat dateFormat = new SimpleDateFormat("yyyyMMdd");
   //get current date time with Date()
   Date date = new Date();
   System.out.println(dateFormat.format(date));

   //get current date time with Calendar()
DateFormat timeFormat = new SimpleDateFormat("HHmmss");
   Date d=new Date();
   System.out.println(timeFormat.format(d);

答案 2 :(得分:0)

你看过joda-time图书馆了吗? Link here

使用joda-time,您可以轻松拨打new DateTime(),在其上调用toString()并获得此输出,这可能更符合您的要求:

public static void main(final String[] args) {
        final DateTime d = new DateTime();
        System.out.println(d.toString());
    }

输出:2012-07-09T14:54:13.366 + 02:00

Joda-Time在优势方面非常强大。当然,这是一个你需要包含的额外库,如果不可能或不希望这样,另一种方法可能会更好。

答案 3 :(得分:0)

我试过了:

SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd HHmmss");
Date date = Calendar.getInstance().getTime();
System.out.println(sdf.format(date));

收率:

  

20120709 145518

第一部分是日期(20120709),第二部分是时间(145518)。

您似乎使用了错误的符号。我建议您查看here以获取完整的详细信息。

答案 4 :(得分:0)

DateFormat dateFormat = new SimpleDateFormat("yyyyMMdd HH:mm:SS");
    //get current date time with Date()
Date date = new Date();
System.out.println(dateFormat.format(date));

有关更多格式,请参阅API Doc