我希望以下列格式显示当前日期和时间:
日期: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。
答案 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