0

我想要以下格式的当前日期和时间:

日期: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。

4

5 回答 5

9

利用format()

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

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

于 2012-07-09T12:52:05.383 回答
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);
于 2012-07-09T12:55:29.933 回答
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

于 2012-07-09T13:02:27.833 回答
0

你检查了 joda-time 图书馆吗?链接在这里

使用 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 从好的方面来说非常强大。当然,这是您需要包含的额外库,如果这是不可能或不希望的,另一种方法可能会更好。

于 2012-07-09T12:56:59.857 回答
0

我试过这个:

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

产量:

20120709 145518

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

看来您一直在使用错误的符号。我建议您在这里查看完整的详细信息。

于 2012-07-09T12:57:03.147 回答